%PSTricks content-type (pstricks.sty package needed)
%Add \usepackage{pstricks} in the preamble of your LaTeX file
%You can rescale the whole picture (to 80% for instance) by using the command \def\JPicScale{0.8}
\ifx\JPicScale\undefined\def\JPicScale{1}\fi
\psset{unit=\JPicScale mm}
\psset{linewidth=0.3,dotsep=1,hatchwidth=0.3,hatchsep=1.5,shadowsize=1,dimen=middle}
\psset{dotsize=0.7 2.5,dotscale=1 1,fillcolor=black}
\psset{arrowsize=1 2,arrowlength=1,arrowinset=0.25,tbarsize=0.7 5,bracketlength=0.15,rbracketlength=0.15}
\begin{pspicture}(0,0)(233.56,82.5)
\psline[linewidth=0.75](8.29,50.79)(8.42,78.42)
\psline[linewidth=0.75](12.11,78.03)(11.84,51.18)
\psline[linewidth=0.75](12.89,78.95)(29.21,52.11)
\rput{0}(10.2,49.88){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(10.27,79.87){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(30.3,49.56){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(50,50){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(49.74,80){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](51.45,50.53)(51.32,77.76)
\psline[linewidth=0.75](48.03,51.71)(47.89,77.63)
\rput{0}(30,79.34){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](28.68,77.5)(12.5,50.79)
\psline[linewidth=0.75](69.61,50.26)(69.74,77.89)
\psline[linewidth=0.75](73.42,77.5)(73.16,50.66)
\psline[linewidth=0.75](74.21,78.42)(90.53,51.58)
\rput{0}(71.52,49.35){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(71.58,79.34){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(91.62,49.03){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(111.31,49.47){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(111.06,79.47){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](112.76,50)(112.63,77.24)
\psline[linewidth=0.75](109.34,51.18)(109.21,77.11)
\rput{0}(91.58,79.08){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](90,76.97)(73.82,50.26)
\psline[linewidth=0.75](129.61,50.26)(129.74,77.89)
\psline[linewidth=0.75](133.42,77.5)(133.16,50.66)
\psline[linewidth=0.75](134.21,78.42)(150.53,51.58)
\rput{0}(131.52,49.35){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(131.58,79.34){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(151.62,49.03){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(171.06,79.47){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](153.16,49.47)(172.63,77.24)
\psline[linewidth=0.75](151.58,51.58)(169.21,77.11)
\rput{0}(151.58,79.08){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](150,76.97)(133.82,50.26)
\psline[linewidth=0.75](189.61,50.26)(189.74,77.89)
\psline[linewidth=0.75](193.42,77.5)(193.16,50.66)
\psline[linewidth=0.75](194.21,78.42)(210.53,51.58)
\rput{0}(191.52,49.35){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(191.58,79.34){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(211.62,49.03){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(201.31,49.47){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(231.06,79.47){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](203.16,49.74)(230.53,77.37)
\psline[linewidth=0.75](200,50)(228.16,78.42)
\rput{0}(211.58,79.08){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](210,76.97)(193.82,50.26)
\psline[linewidth=0.75](78.29,8.95)(78.42,36.58)
\psline[linewidth=0.75](82.11,36.18)(81.84,9.34)
\psline[linewidth=0.75](82.89,37.11)(99.21,10.26)
\rput{0}(80.2,8.04){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(80.27,38.03){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(100.3,7.72){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(119.74,38.16){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](81.71,6.18)(119.21,36.05)
\psline[linewidth=0.75](82.76,9.34)(116.84,37.11)
\rput{0}(100.27,37.76){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](98.68,35.66)(82.5,8.95)
\psline[linewidth=0.75](158.29,8.95)(158.42,36.58)
\psline[linewidth=0.75](162.11,36.18)(161.84,9.34)
\psline[linewidth=0.75](162.89,37.11)(179.21,10.26)
\rput{0}(160.2,8.04){\psellipse[linewidth=0.75,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(160.27,38.03){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\rput{0}(180.3,7.72){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(150,8.16){\psellipse[linewidth=0.5,fillstyle=solid](0,0)(2.5,2.5)}
\rput{0}(199.74,38.16){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](152.11,7.37)(199.21,36.05)
\psline[linewidth=0.75](150.66,8.95)(196.84,37.11)
\rput{0}(180.27,37.76){\psellipse[linewidth=0.75](0,0)(2.5,2.5)}
\psline[linewidth=0.75](178.68,35.66)(162.5,8.95)
\end{pspicture}

\bs
{\small\it {\bf Fig 4}\pointir Counting crossings and overlappings produces an associative law.}