Updated test cases documentation

This commit is contained in:
Bartek Kryza
2022-02-27 00:58:30 +01:00
parent 17b0686f5c
commit 07ba6fd5ed
42 changed files with 1434 additions and 1398 deletions

View File

@@ -1,85 +1,86 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="493px" preserveAspectRatio="none" style="width:976px;height:493px;" version="1.1" viewBox="0 0 976 493" width="976px" zoomAndPan="magnify"><defs><filter height="300%" id="f1t2ae8s8e3m0g" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><!--MD5=[c0dc6a189f413135b54920771406b18d]
class C_0000000357--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="86.4141" id="C_0000000357" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="363" y="142"/><ellipse cx="462.25" cy="158" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M462.3594,153.3438 L461.2031,158.4219 L463.5313,158.4219 L462.3594,153.3438 Z M460.875,151.1094 L463.8594,151.1094 L467.2188,163.5 L464.7656,163.5 L464,160.4375 L460.7188,160.4375 L459.9688,163.5 L457.5313,163.5 L460.875,151.1094 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="38" x="482.75" y="162.1543">Visitor</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="364" x2="607" y1="174" y2="174"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="364" x2="607" y1="182" y2="182"/><ellipse cx="374" cy="193" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="88" x="383" y="196.2104">~Visitor() : void</text><ellipse cx="374" cy="205.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="219" x="383" y="209.0151">visit_A(A const&amp; item) const = 0 : void</text><ellipse cx="374" cy="218.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="219" x="383" y="221.8198">visit_B(B const&amp; item) const = 0 : void</text><!--MD5=[a0c25ad09a7daf2ca9d345598ef00c3c]
class C_0000000359--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="73.6094" id="C_0000000359" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="116" y="288"/><ellipse cx="199.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M202.7188,309.6406 Q202.1406,309.9375 201.5,310.0781 Q200.8594,310.2344 200.1563,310.2344 Q197.6563,310.2344 196.3281,308.5938 Q195.0156,306.9375 195.0156,303.8125 Q195.0156,300.6875 196.3281,299.0313 Q197.6563,297.375 200.1563,297.375 Q200.8594,297.375 201.5,297.5313 Q202.1563,297.6875 202.7188,297.9844 L202.7188,300.7031 Q202.0938,300.125 201.5,299.8594 Q200.9063,299.5781 200.2813,299.5781 Q198.9375,299.5781 198.25,300.6563 Q197.5625,301.7188 197.5625,303.8125 Q197.5625,305.9063 198.25,306.9844 Q198.9375,308.0469 200.2813,308.0469 Q200.9063,308.0469 201.5,307.7813 Q202.0938,307.5 202.7188,306.9219 L202.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="220.25" y="308.1543">Visitor1</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="338" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="338" y1="328" y2="328"/><ellipse cx="127" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="136" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="127" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="136" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[16fb7284204ee47cfea8f10c29696673]
class C_0000000361--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="73.6094" id="C_0000000361" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="374" y="288"/><ellipse cx="457.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M460.7188,309.6406 Q460.1406,309.9375 459.5,310.0781 Q458.8594,310.2344 458.1563,310.2344 Q455.6563,310.2344 454.3281,308.5938 Q453.0156,306.9375 453.0156,303.8125 Q453.0156,300.6875 454.3281,299.0313 Q455.6563,297.375 458.1563,297.375 Q458.8594,297.375 459.5,297.5313 Q460.1563,297.6875 460.7188,297.9844 L460.7188,300.7031 Q460.0938,300.125 459.5,299.8594 Q458.9063,299.5781 458.2813,299.5781 Q456.9375,299.5781 456.25,300.6563 Q455.5625,301.7188 455.5625,303.8125 Q455.5625,305.9063 456.25,306.9844 Q456.9375,308.0469 458.2813,308.0469 Q458.9063,308.0469 459.5,307.7813 Q460.0938,307.5 460.7188,306.9219 L460.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="478.25" y="308.1543">Visitor2</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="596" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="596" y1="328" y2="328"/><ellipse cx="385" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="394" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="385" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="394" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[b5b756fa088812d7bc586bc2377b4756]
class C_0000000363--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="73.6094" id="C_0000000363" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="632" y="288"/><ellipse cx="715.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M718.7188,309.6406 Q718.1406,309.9375 717.5,310.0781 Q716.8594,310.2344 716.1563,310.2344 Q713.6563,310.2344 712.3281,308.5938 Q711.0156,306.9375 711.0156,303.8125 Q711.0156,300.6875 712.3281,299.0313 Q713.6563,297.375 716.1563,297.375 Q716.8594,297.375 717.5,297.5313 Q718.1563,297.6875 718.7188,297.9844 L718.7188,300.7031 Q718.0938,300.125 717.5,299.8594 Q716.9063,299.5781 716.2813,299.5781 Q714.9375,299.5781 714.25,300.6563 Q713.5625,301.7188 713.5625,303.8125 Q713.5625,305.9063 714.25,306.9844 Q714.9375,308.0469 716.2813,308.0469 Q716.9063,308.0469 717.5,307.7813 Q718.0938,307.5 718.7188,306.9219 L718.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="736.25" y="308.1543">Visitor3</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="633" x2="854" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="633" x2="854" y1="328" y2="328"/><ellipse cx="643" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="652" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="643" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="652" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[938060dfbe60ffc448c8cfa57b97cca9]
class C_0000000365--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="73.6094" id="C_0000000365" style="stroke: #A80036; stroke-width: 1.5;" width="283" x="344" y="8"/><ellipse cx="467.25" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M467.3594,19.3438 L466.2031,24.4219 L468.5313,24.4219 L467.3594,19.3438 Z M465.875,17.1094 L468.8594,17.1094 L472.2188,29.5 L469.7656,29.5 L469,26.4375 L465.7188,26.4375 L464.9688,29.5 L462.5313,29.5 L465.875,17.1094 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="487.75" y="28.1543">Item</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="345" x2="626" y1="40" y2="40"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="345" x2="626" y1="48" y2="48"/><ellipse cx="355" cy="59" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="77" x="364" y="62.2104">~Item() : void</text><ellipse cx="355" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="257" x="364" y="75.0151">accept(Visitor const&amp; visitor) const = 0 : void</text><!--MD5=[c9b7a562cdd3f76b0c28e3579008c797]
class C_0000000367--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="60.8047" id="C_0000000367" style="stroke: #A80036; stroke-width: 1.5;" width="261" x="6" y="422"/><ellipse cx="128.25" cy="438" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M131.2188,443.6406 Q130.6406,443.9375 130,444.0781 Q129.3594,444.2344 128.6563,444.2344 Q126.1563,444.2344 124.8281,442.5938 Q123.5156,440.9375 123.5156,437.8125 Q123.5156,434.6875 124.8281,433.0313 Q126.1563,431.375 128.6563,431.375 Q129.3594,431.375 130,431.5313 Q130.6563,431.6875 131.2188,431.9844 L131.2188,434.7031 Q130.5938,434.125 130,433.8594 Q129.4063,433.5781 128.7813,433.5781 Q127.4375,433.5781 126.75,434.6563 Q126.0625,435.7188 126.0625,437.8125 Q126.0625,439.9063 126.75,440.9844 Q127.4375,442.0469 128.7813,442.0469 Q129.4063,442.0469 130,441.7813 Q130.5938,441.5 131.2188,440.9219 L131.2188,443.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="148.75" y="442.1543">A</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="266" y1="454" y2="454"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="266" y1="462" y2="462"/><ellipse cx="17" cy="473" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="26" y="476.2104">accept(Visitor const&amp; visitor) const : void</text><!--MD5=[8b5ec23947b7ff74bee1b43c1eafdb07]
class C_0000000369--><rect fill="#FEFECE" filter="url(#f1t2ae8s8e3m0g)" height="60.8047" id="C_0000000369" style="stroke: #A80036; stroke-width: 1.5;" width="261" x="704" y="422"/><ellipse cx="826.25" cy="438" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M829.2188,443.6406 Q828.6406,443.9375 828,444.0781 Q827.3594,444.2344 826.6563,444.2344 Q824.1563,444.2344 822.8281,442.5938 Q821.5156,440.9375 821.5156,437.8125 Q821.5156,434.6875 822.8281,433.0313 Q824.1563,431.375 826.6563,431.375 Q827.3594,431.375 828,431.5313 Q828.6563,431.6875 829.2188,431.9844 L829.2188,434.7031 Q828.5938,434.125 828,433.8594 Q827.4063,433.5781 826.7813,433.5781 Q825.4375,433.5781 824.75,434.6563 Q824.0625,435.7188 824.0625,437.8125 Q824.0625,439.9063 824.75,440.9844 Q825.4375,442.0469 826.7813,442.0469 Q827.4063,442.0469 828,441.7813 Q828.5938,441.5 829.2188,440.9219 L829.2188,443.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="846.75" y="442.1543">B</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="705" x2="964" y1="454" y2="454"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="705" x2="964" y1="462" y2="462"/><ellipse cx="715" cy="473" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="724" y="476.2104">accept(Visitor const&amp; visitor) const : void</text><!--MD5=[57c657abcd6ee5e7efcbcefa08404859]
reverse link C_0000000357 to C_0000000359--><path d="M388.68,237.79 C357.47,254.48 323.56,272.62 294.94,287.93 " fill="none" id="C_0000000357&lt;-C_0000000359" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="385.75,231.41,406.69,228.15,392.36,243.76,385.75,231.41" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[c5d9c20a1b4805975b7514b2d52670ec]
reverse link C_0000000357 to C_0000000361--><path d="M485.5,248.62 C485.5,262 485.5,275.71 485.5,287.7 " fill="none" id="C_0000000357&lt;-C_0000000361" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="478.5,248.15,485.5,228.15,492.5,248.15,478.5,248.15" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e48fbdfdae92a36a0207a2b8591f4184]
reverse link C_0000000357 to C_0000000363--><path d="M582.32,237.79 C613.53,254.48 647.44,272.62 676.06,287.93 " fill="none" id="C_0000000357&lt;-C_0000000363" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="578.64,243.76,564.31,228.15,585.25,231.41,578.64,243.76" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[b44934ed6031fb69bba505daae3eb201]
reverse link C_0000000365 to C_0000000367--><path d="M342.91,89.23 C249.3,125.88 134.09,188.64 77.5,288 C52.56,331.79 85.27,388.03 111.02,421.83 " fill="none" id="C_0000000365&lt;-C_0000000367" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="340.44,82.69,361.62,82.14,345.4,95.78,340.44,82.69" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[7c5b9109480d4e751aa28dc6d1a2138f]
reverse link C_0000000365 to C_0000000369--><path d="M643.55,88.73 C742.32,124.51 861.74,186.48 921.5,288 C938.18,316.34 933.87,331.53 921.5,362 C911.96,385.49 892.97,406.2 875.16,421.77 " fill="none" id="C_0000000365&lt;-C_0000000369" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="640.97,95.24,624.41,82.02,645.6,82.03,640.97,95.24" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[2edd3383abbc4b2b54c277d8c5161be3]
link C_0000000357 to C_0000000367--><path d="M362.77,199.95 C256.56,215.45 115.24,244.21 81.5,288 C52.44,325.71 75.94,381.87 101.17,417.58 " fill="none" id="C_0000000357-&gt;C_0000000367" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="104.26,421.83,102.2135,412.1961,101.3242,417.7826,95.7377,416.8933,104.26,421.83" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[95fe8c2fd74de23d3368b840188f8c8f]
link C_0000000367 to C_0000000357--><path d="M129.01,421.83 C112.94,386.47 86.26,327.24 116.5,288 C146.76,248.73 263.53,221.55 357.84,205.18 " fill="none" id="C_0000000367-&gt;C_0000000357" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="362.88,204.31,353.3345,201.8843,357.9515,205.1528,354.6831,209.7699,362.88,204.31" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[415ef045a1e87bffaae663cf2b2d6aaf]
link C_0000000357 to C_0000000369--><path d="M608.44,204.23 C703.85,220.49 824.65,247.96 855.5,288 C884.44,325.56 861.25,381.41 844.86,417.14 " fill="none" id="C_0000000357-&gt;C_0000000369" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="842.7,421.83,850.1072,415.339,844.798,417.2915,842.8456,411.9822,842.7,421.83" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[8137122c917909752a5a8b45ab2d66c3]
link C_0000000369 to C_0000000357--><path d="M867.45,421.83 C894.06,386.47 920.74,327.24 890.5,288 C857.21,244.79 719.18,216.22 613.26,200.58 " fill="none" id="C_0000000369-&gt;C_0000000357" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="608.24,199.84,616.5754,205.0861,613.1886,200.5551,617.7196,197.1683,608.24,199.84" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f8c1ccfb299490dea4612836c4d6171f]
link C_0000000359 to C_0000000367--><path d="M201.18,362.3 C188.6,379.65 173.62,400.31 161.25,417.37 " fill="none" id="C_0000000359-&gt;C_0000000367" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="158.16,421.62,166.6709,416.6637,161.0864,417.5659,160.1842,411.9814,158.16,421.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[7ec27212c6f841078ddcfea083a07ec7]
link C_0000000359 to C_0000000369--><path d="M339.22,357.82 C345.05,359.28 350.84,360.68 356.5,362 C471.12,388.67 602.62,412.83 698.65,429.31 " fill="none" id="C_0000000359-&gt;C_0000000369" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="703.77,430.18,695.5731,424.7201,698.8415,429.3372,694.2245,432.6057,703.77,430.18" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[11646803207181196493dcf8897926f3]
link C_0000000361 to C_0000000367--><path d="M385.02,362.13 C333.91,380.51 272.4,402.63 223.36,420.26 " fill="none" id="C_0000000361-&gt;C_0000000367" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="218.66,421.96,228.482,422.6867,223.3664,420.272,225.7812,415.1564,218.66,421.96" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[ff5ea8b44b7ffce52c17fd4c7f044498]
link C_0000000361 to C_0000000369--><path d="M585.98,362.13 C637.09,380.51 698.6,402.63 747.64,420.26 " fill="none" id="C_0000000361-&gt;C_0000000369" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="752.34,421.96,745.2188,415.1564,747.6336,420.272,742.518,422.6867,752.34,421.96" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[98b12962bbda806b200d44d4efb6b104]
link C_0000000363 to C_0000000367--><path d="M631.78,357.82 C625.95,359.28 620.16,360.68 614.5,362 C499.88,388.67 368.38,412.83 272.35,429.31 " fill="none" id="C_0000000363-&gt;C_0000000367" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="267.23,430.18,276.7755,432.6057,272.1585,429.3372,275.4269,424.7201,267.23,430.18" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[465895ac9ce364c9dcd2b9790c05ce0f]
link C_0000000363 to C_0000000369--><path d="M769.82,362.3 C782.4,379.65 797.38,400.31 809.75,417.37 " fill="none" id="C_0000000363-&gt;C_0000000369" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="812.84,421.62,810.8158,411.9814,809.9136,417.5659,804.3291,416.6637,812.84,421.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[a2c5f4809e33082a550b44846d743ebf]
link C_0000000365 to C_0000000357--><path d="M485.5,82.26 C485.5,98.76 485.5,118.51 485.5,136.2 " fill="none" id="C_0000000365-&gt;C_0000000357" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="485.5,141.62,489.5,132.62,485.5,136.62,481.5,132.62,485.5,141.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[13f77eb6657fcc2f433d839307c20c3b]
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="493px" preserveAspectRatio="none" style="width:976px;height:493px;" version="1.1" viewBox="0 0 976 493" width="976px" zoomAndPan="magnify"><defs><filter height="300%" id="fle8maheqlfgc" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><!--MD5=[2823dc17016fda273f8cdad50f4b295e]
class C_0000000410--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="86.4141" id="C_0000000410" style="stroke: #A80036; stroke-width: 1.5;" width="245" x="363" y="142"/><ellipse cx="462.25" cy="158" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M462.3594,153.3438 L461.2031,158.4219 L463.5313,158.4219 L462.3594,153.3438 Z M460.875,151.1094 L463.8594,151.1094 L467.2188,163.5 L464.7656,163.5 L464,160.4375 L460.7188,160.4375 L459.9688,163.5 L457.5313,163.5 L460.875,151.1094 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="38" x="482.75" y="162.1543">Visitor</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="364" x2="607" y1="174" y2="174"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="364" x2="607" y1="182" y2="182"/><ellipse cx="374" cy="193" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="88" x="383" y="196.2104">~Visitor() : void</text><ellipse cx="374" cy="205.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="219" x="383" y="209.0151">visit_A(A const&amp; item) const = 0 : void</text><ellipse cx="374" cy="218.6094" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="219" x="383" y="221.8198">visit_B(B const&amp; item) const = 0 : void</text><!--MD5=[f92fbe041ce671ca1086bfd81c2e4d0f]
class C_0000000412--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="73.6094" id="C_0000000412" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="116" y="288"/><ellipse cx="199.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M202.7188,309.6406 Q202.1406,309.9375 201.5,310.0781 Q200.8594,310.2344 200.1563,310.2344 Q197.6563,310.2344 196.3281,308.5938 Q195.0156,306.9375 195.0156,303.8125 Q195.0156,300.6875 196.3281,299.0313 Q197.6563,297.375 200.1563,297.375 Q200.8594,297.375 201.5,297.5313 Q202.1563,297.6875 202.7188,297.9844 L202.7188,300.7031 Q202.0938,300.125 201.5,299.8594 Q200.9063,299.5781 200.2813,299.5781 Q198.9375,299.5781 198.25,300.6563 Q197.5625,301.7188 197.5625,303.8125 Q197.5625,305.9063 198.25,306.9844 Q198.9375,308.0469 200.2813,308.0469 Q200.9063,308.0469 201.5,307.7813 Q202.0938,307.5 202.7188,306.9219 L202.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="220.25" y="308.1543">Visitor1</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="338" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="117" x2="338" y1="328" y2="328"/><ellipse cx="127" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="136" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="127" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="136" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[0534e1fd06b5bfcee2f7c64217bdf5cd]
class C_0000000414--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="73.6094" id="C_0000000414" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="374" y="288"/><ellipse cx="457.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M460.7188,309.6406 Q460.1406,309.9375 459.5,310.0781 Q458.8594,310.2344 458.1563,310.2344 Q455.6563,310.2344 454.3281,308.5938 Q453.0156,306.9375 453.0156,303.8125 Q453.0156,300.6875 454.3281,299.0313 Q455.6563,297.375 458.1563,297.375 Q458.8594,297.375 459.5,297.5313 Q460.1563,297.6875 460.7188,297.9844 L460.7188,300.7031 Q460.0938,300.125 459.5,299.8594 Q458.9063,299.5781 458.2813,299.5781 Q456.9375,299.5781 456.25,300.6563 Q455.5625,301.7188 455.5625,303.8125 Q455.5625,305.9063 456.25,306.9844 Q456.9375,308.0469 458.2813,308.0469 Q458.9063,308.0469 459.5,307.7813 Q460.0938,307.5 460.7188,306.9219 L460.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="478.25" y="308.1543">Visitor2</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="596" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="375" x2="596" y1="328" y2="328"/><ellipse cx="385" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="394" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="385" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="394" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[c8a13d88dd96613394bfce53a19d83fe]
class C_0000000416--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="73.6094" id="C_0000000416" style="stroke: #A80036; stroke-width: 1.5;" width="223" x="632" y="288"/><ellipse cx="715.75" cy="304" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M718.7188,309.6406 Q718.1406,309.9375 717.5,310.0781 Q716.8594,310.2344 716.1563,310.2344 Q713.6563,310.2344 712.3281,308.5938 Q711.0156,306.9375 711.0156,303.8125 Q711.0156,300.6875 712.3281,299.0313 Q713.6563,297.375 716.1563,297.375 Q716.8594,297.375 717.5,297.5313 Q718.1563,297.6875 718.7188,297.9844 L718.7188,300.7031 Q718.0938,300.125 717.5,299.8594 Q716.9063,299.5781 716.2813,299.5781 Q714.9375,299.5781 714.25,300.6563 Q713.5625,301.7188 713.5625,303.8125 Q713.5625,305.9063 714.25,306.9844 Q714.9375,308.0469 716.2813,308.0469 Q716.9063,308.0469 717.5,307.7813 Q718.0938,307.5 718.7188,306.9219 L718.7188,309.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="47" x="736.25" y="308.1543">Visitor3</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="633" x2="854" y1="320" y2="320"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="633" x2="854" y1="328" y2="328"/><ellipse cx="643" cy="339" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="195" x="652" y="342.2104">visit_A(A const&amp; item) const : void</text><ellipse cx="643" cy="351.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="197" x="652" y="355.0151">visit_B(B const&amp; item) const : void</text><!--MD5=[6906ba058e48709e5d5c03346b68f73c]
class C_0000000418--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="73.6094" id="C_0000000418" style="stroke: #A80036; stroke-width: 1.5;" width="283" x="344" y="8"/><ellipse cx="467.25" cy="24" fill="#A9DCDF" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M467.3594,19.3438 L466.2031,24.4219 L468.5313,24.4219 L467.3594,19.3438 Z M465.875,17.1094 L468.8594,17.1094 L472.2188,29.5 L469.7656,29.5 L469,26.4375 L465.7188,26.4375 L464.9688,29.5 L462.5313,29.5 L465.875,17.1094 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="28" x="487.75" y="28.1543">Item</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="345" x2="626" y1="40" y2="40"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="345" x2="626" y1="48" y2="48"/><ellipse cx="355" cy="59" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" text-decoration="underline" textLength="77" x="364" y="62.2104">~Item() : void</text><ellipse cx="355" cy="71.8047" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" font-style="italic" lengthAdjust="spacingAndGlyphs" textLength="257" x="364" y="75.0151">accept(Visitor const&amp; visitor) const = 0 : void</text><!--MD5=[a8dcd5fcd53b285eeb59775da3e59594]
class C_0000000420--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="60.8047" id="C_0000000420" style="stroke: #A80036; stroke-width: 1.5;" width="261" x="6" y="422"/><ellipse cx="128.25" cy="438" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M131.2188,443.6406 Q130.6406,443.9375 130,444.0781 Q129.3594,444.2344 128.6563,444.2344 Q126.1563,444.2344 124.8281,442.5938 Q123.5156,440.9375 123.5156,437.8125 Q123.5156,434.6875 124.8281,433.0313 Q126.1563,431.375 128.6563,431.375 Q129.3594,431.375 130,431.5313 Q130.6563,431.6875 131.2188,431.9844 L131.2188,434.7031 Q130.5938,434.125 130,433.8594 Q129.4063,433.5781 128.7813,433.5781 Q127.4375,433.5781 126.75,434.6563 Q126.0625,435.7188 126.0625,437.8125 Q126.0625,439.9063 126.75,440.9844 Q127.4375,442.0469 128.7813,442.0469 Q129.4063,442.0469 130,441.7813 Q130.5938,441.5 131.2188,440.9219 L131.2188,443.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="148.75" y="442.1543">A</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="266" y1="454" y2="454"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="7" x2="266" y1="462" y2="462"/><ellipse cx="17" cy="473" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="26" y="476.2104">accept(Visitor const&amp; visitor) const : void</text><!--MD5=[e650dcc2bd136c9503e3a4973da1af4f]
class C_0000000422--><rect fill="#FEFECE" filter="url(#fle8maheqlfgc)" height="60.8047" id="C_0000000422" style="stroke: #A80036; stroke-width: 1.5;" width="261" x="704" y="422"/><ellipse cx="826.25" cy="438" fill="#ADD1B2" rx="11" ry="11" style="stroke: #A80036; stroke-width: 1.0;"/><path d="M829.2188,443.6406 Q828.6406,443.9375 828,444.0781 Q827.3594,444.2344 826.6563,444.2344 Q824.1563,444.2344 822.8281,442.5938 Q821.5156,440.9375 821.5156,437.8125 Q821.5156,434.6875 822.8281,433.0313 Q824.1563,431.375 826.6563,431.375 Q827.3594,431.375 828,431.5313 Q828.6563,431.6875 829.2188,431.9844 L829.2188,434.7031 Q828.5938,434.125 828,433.8594 Q827.4063,433.5781 826.7813,433.5781 Q825.4375,433.5781 824.75,434.6563 Q824.0625,435.7188 824.0625,437.8125 Q824.0625,439.9063 824.75,440.9844 Q825.4375,442.0469 826.7813,442.0469 Q827.4063,442.0469 828,441.7813 Q828.5938,441.5 829.2188,440.9219 L829.2188,443.6406 Z "/><text fill="#000000" font-family="sans-serif" font-size="12" lengthAdjust="spacingAndGlyphs" textLength="8" x="846.75" y="442.1543">B</text><line style="stroke: #A80036; stroke-width: 1.5;" x1="705" x2="964" y1="454" y2="454"/><line style="stroke: #A80036; stroke-width: 1.5;" x1="705" x2="964" y1="462" y2="462"/><ellipse cx="715" cy="473" fill="#84BE84" rx="3" ry="3" style="stroke: #038048; stroke-width: 1.0;"/><text fill="#000000" font-family="sans-serif" font-size="11" lengthAdjust="spacingAndGlyphs" textLength="235" x="724" y="476.2104">accept(Visitor const&amp; visitor) const : void</text><!--MD5=[922a89aa4184c1848781b8ddc4d84899]
link C_0000000410 to C_0000000420--><path d="M362.77,199.95 C256.56,215.45 115.24,244.21 81.5,288 C52.44,325.71 75.94,381.87 101.17,417.58 " fill="none" id="C_0000000410-&gt;C_0000000420" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="104.26,421.83,102.2135,412.1961,101.3242,417.7826,95.7377,416.8933,104.26,421.83" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[f5891fee3e8cc36a7eb33c6b23b909ac]
link C_0000000420 to C_0000000410--><path d="M129.01,421.83 C112.94,386.47 86.26,327.24 116.5,288 C146.76,248.73 263.53,221.55 357.84,205.18 " fill="none" id="C_0000000420-&gt;C_0000000410" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="362.88,204.31,353.3345,201.8843,357.9515,205.1528,354.6831,209.7699,362.88,204.31" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[9c598423852b7c99871ad63fcda0d1d9]
link C_0000000410 to C_0000000422--><path d="M608.44,204.23 C703.85,220.49 824.65,247.96 855.5,288 C884.44,325.56 861.25,381.41 844.86,417.14 " fill="none" id="C_0000000410-&gt;C_0000000422" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="842.7,421.83,850.1072,415.339,844.798,417.2915,842.8456,411.9822,842.7,421.83" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[4443cd320f78c5f0fa06be61e701a823]
link C_0000000422 to C_0000000410--><path d="M867.45,421.83 C894.06,386.47 920.74,327.24 890.5,288 C857.21,244.79 719.18,216.22 613.26,200.58 " fill="none" id="C_0000000422-&gt;C_0000000410" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="608.24,199.84,616.5754,205.0861,613.1886,200.5551,617.7196,197.1683,608.24,199.84" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[8d8ffdf7cd1a528493c1defbfcb52112]
link C_0000000412 to C_0000000420--><path d="M201.18,362.3 C188.6,379.65 173.62,400.31 161.25,417.37 " fill="none" id="C_0000000412-&gt;C_0000000420" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="158.16,421.62,166.6709,416.6637,161.0864,417.5659,160.1842,411.9814,158.16,421.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[8340dd8c6740ae79d092b60aee7a696d]
link C_0000000412 to C_0000000422--><path d="M339.22,357.82 C345.05,359.28 350.84,360.68 356.5,362 C471.12,388.67 602.62,412.83 698.65,429.31 " fill="none" id="C_0000000412-&gt;C_0000000422" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="703.77,430.18,695.5731,424.7201,698.8415,429.3372,694.2245,432.6057,703.77,430.18" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[2001dd26aa49264e4295a5279100c286]
reverse link C_0000000410 to C_0000000412--><path d="M388.68,237.79 C357.47,254.48 323.56,272.62 294.94,287.93 " fill="none" id="C_0000000410&lt;-C_0000000412" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="385.75,231.41,406.69,228.15,392.36,243.76,385.75,231.41" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[a7b752461b81b0812d201c5b9e2aac59]
link C_0000000414 to C_0000000420--><path d="M385.02,362.13 C333.91,380.51 272.4,402.63 223.36,420.26 " fill="none" id="C_0000000414-&gt;C_0000000420" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="218.66,421.96,228.482,422.6867,223.3664,420.272,225.7812,415.1564,218.66,421.96" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e30ba89b4a18096c1c799242bc160630]
link C_0000000414 to C_0000000422--><path d="M585.98,362.13 C637.09,380.51 698.6,402.63 747.64,420.26 " fill="none" id="C_0000000414-&gt;C_0000000422" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="752.34,421.96,745.2188,415.1564,747.6336,420.272,742.518,422.6867,752.34,421.96" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[99ba5b0d095d5646992c0a542caa35a6]
reverse link C_0000000410 to C_0000000414--><path d="M485.5,248.62 C485.5,262 485.5,275.71 485.5,287.7 " fill="none" id="C_0000000410&lt;-C_0000000414" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="478.5,248.15,485.5,228.15,492.5,248.15,478.5,248.15" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[77308d65cf17836d04f87ecdbde16625]
link C_0000000416 to C_0000000420--><path d="M631.78,357.82 C625.95,359.28 620.16,360.68 614.5,362 C499.88,388.67 368.38,412.83 272.35,429.31 " fill="none" id="C_0000000416-&gt;C_0000000420" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="267.23,430.18,276.7755,432.6057,272.1585,429.3372,275.4269,424.7201,267.23,430.18" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[5c8cadb5ca4687e3b14706de471e872c]
link C_0000000416 to C_0000000422--><path d="M769.82,362.3 C782.4,379.65 797.38,400.31 809.75,417.37 " fill="none" id="C_0000000416-&gt;C_0000000422" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="812.84,421.62,810.8158,411.9814,809.9136,417.5659,804.3291,416.6637,812.84,421.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[04fe2b832ea60674b2d42ccfd8a98967]
reverse link C_0000000410 to C_0000000416--><path d="M582.32,237.79 C613.53,254.48 647.44,272.62 676.06,287.93 " fill="none" id="C_0000000410&lt;-C_0000000416" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="578.64,243.76,564.31,228.15,585.25,231.41,578.64,243.76" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[e9a40fcf6e3ecb87e9e00cc15fc18b84]
link C_0000000418 to C_0000000410--><path d="M485.5,82.26 C485.5,98.76 485.5,118.51 485.5,136.2 " fill="none" id="C_0000000418-&gt;C_0000000410" style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 7.0,7.0;"/><polygon fill="#A80036" points="485.5,141.62,489.5,132.62,485.5,136.62,481.5,132.62,485.5,141.62" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[d8cd550e8720cb22d312585a5eb35319]
reverse link C_0000000418 to C_0000000420--><path d="M342.91,89.23 C249.3,125.88 134.09,188.64 77.5,288 C52.56,331.79 85.27,388.03 111.02,421.83 " fill="none" id="C_0000000418&lt;-C_0000000420" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="340.44,82.69,361.62,82.14,345.4,95.78,340.44,82.69" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[16f48dd32169889efc7589238a1638f4]
reverse link C_0000000418 to C_0000000422--><path d="M643.55,88.73 C742.32,124.51 861.74,186.48 921.5,288 C938.18,316.34 933.87,331.53 921.5,362 C911.96,385.49 892.97,406.2 875.16,421.77 " fill="none" id="C_0000000418&lt;-C_0000000422" style="stroke: #A80036; stroke-width: 1.0;"/><polygon fill="none" points="640.97,95.24,624.41,82.02,645.6,82.03,640.97,95.24" style="stroke: #A80036; stroke-width: 1.0;"/><!--MD5=[bcaf5f42c5b73b7a1377c0ee24c80ab1]
@startuml
abstract "Visitor" as C_0000000357
abstract C_0000000357 {
abstract "Visitor" as C_0000000410
abstract C_0000000410 {
{static} +~Visitor() : void
{abstract} +visit_A(A const& item) const = 0 : void
{abstract} +visit_B(B const& item) const = 0 : void
}
class "Visitor1" as C_0000000359
class C_0000000359 {
class "Visitor1" as C_0000000412
class C_0000000412 {
+visit_A(A const& item) const : void
+visit_B(B const& item) const : void
}
C_0000000357 <|- - C_0000000359
class "Visitor2" as C_0000000361
class C_0000000361 {
class "Visitor2" as C_0000000414
class C_0000000414 {
+visit_A(A const& item) const : void
+visit_B(B const& item) const : void
}
C_0000000357 <|- - C_0000000361
class "Visitor3" as C_0000000363
class C_0000000363 {
class "Visitor3" as C_0000000416
class C_0000000416 {
+visit_A(A const& item) const : void
+visit_B(B const& item) const : void
}
C_0000000357 <|- - C_0000000363
abstract "Item" as C_0000000365
abstract C_0000000365 {
abstract "Item" as C_0000000418
abstract C_0000000418 {
{static} +~Item() : void
{abstract} +accept(Visitor const& visitor) const = 0 : void
}
class "A" as C_0000000367
class C_0000000367 {
class "A" as C_0000000420
class C_0000000420 {
+accept(Visitor const& visitor) const : void
}
C_0000000365 <|- - C_0000000367
class "B" as C_0000000369
class C_0000000369 {
class "B" as C_0000000422
class C_0000000422 {
+accept(Visitor const& visitor) const : void
}
C_0000000365 <|- - C_0000000369
C_0000000357 ..> C_0000000367
C_0000000357 ..> C_0000000369
C_0000000359 ..> C_0000000367
C_0000000359 ..> C_0000000369
C_0000000361 ..> C_0000000367
C_0000000361 ..> C_0000000369
C_0000000363 ..> C_0000000367
C_0000000363 ..> C_0000000369
C_0000000365 ..> C_0000000357
C_0000000367 ..> C_0000000357
C_0000000369 ..> C_0000000357
C_0000000410 ..> C_0000000420
C_0000000410 ..> C_0000000422
C_0000000412 ..> C_0000000420
C_0000000412 ..> C_0000000422
C_0000000410 <|- - C_0000000412
C_0000000414 ..> C_0000000420
C_0000000414 ..> C_0000000422
C_0000000410 <|- - C_0000000414
C_0000000416 ..> C_0000000420
C_0000000416 ..> C_0000000422
C_0000000410 <|- - C_0000000416
C_0000000418 ..> C_0000000410
C_0000000420 ..> C_0000000410
C_0000000418 <|- - C_0000000420
C_0000000422 ..> C_0000000410
C_0000000418 <|- - C_0000000422
@enduml
PlantUML version 1.2020.02(Sun Mar 01 11:22:07 CET 2020)

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB