844 lines
29 KiB
XML
844 lines
29 KiB
XML
|
<?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="1179.1667px" preserveAspectRatio="none" style="width:380px;height:1179px;background:#00000000;" version="1.1" viewBox="0 0 380 1179" width="380.2083px" zoomAndPan="magnify"><defs><linearGradient id="g1j9aboxj1b9lo0" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#EDF0F2"/><stop offset="100%" stop-color="#E9ECEF"/></linearGradient><linearGradient id="g1j9aboxj1b9lo1" x1="50%" x2="50%" y1="0%" y2="100%"><stop offset="0%" stop-color="#59B6EC"/><stop offset="100%" stop-color="#2FA4E7"/></linearGradient></defs><g><rect fill="url(#g1j9aboxj1b9lo0)" height="46.1528" rx="4.1667" ry="4.1667" style="stroke:#BABDBF;stroke-width:1.0416666666666667;" width="367.7083" x="2.0833" y="2.0833"/><text fill="#2FA4E7" font-family="Verdana" font-size="20.8333" lengthAdjust="spacing" textLength="340.625" x="15.625" y="33.4452">State Diagram - cerulean theme</text><rect fill="#73A839" height="8.3333" style="stroke:none;stroke-width:1.0416666666666667;" width="83.3333" x="150.5208" y="141.9861"/><ellipse cx="192.1875" cy="68.0278" fill="#033C73" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="State2"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="75" x="99.4792" y="213.8611"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="99.4792" x2="174.4792" y1="249.8861" y2="249.8861"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="115.1042" y="236.8449">State2</text></g><g id="State3"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="75" x="217.1875" y="213.8611"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="217.1875" x2="292.1875" y1="249.8861" y2="249.8861"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="232.8125" y="236.8449">State3</text></g><rect fill="#73A839" height="8.3333" style="stroke:none;stroke-width:1.0416666666666667;" width="83.3333" x="151.5625" y="360.7361"/><g id="State4"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="75" x="155.7292" y="432.6111"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="155.7292" x2="230.7292" y1="468.6361" y2="468.6361"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="43.75" x="171.3542" y="455.5949">State4</text></g><rect fill="url(#g1j9aboxj1b9lo1)" height="620.1416" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="326.0417" x="30.2083" y="553.4444"/><rect height="577.8666" rx="13.0208" ry="13.0208" style="stroke:#00000000;stroke-width:1.0416666666666667;fill:none;" width="319.7917" x="33.3333" y="592.5944"/><line style="stroke:#2683B9;stroke-width:1.5625;fill:none;" x1="30.2083" x2="356.25" y1="589.4694" y2="589.4694"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="38.5417" x="173.9583" y="576.4282">Active</text><ellipse cx="52.0833" cy="630.6152" fill="#033C73" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.NumLockOff"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="108.3333" x="81.25" y="601.9694"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="81.25" x2="189.5833" y1="637.9944" y2="637.9944"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="77.0833" x="96.875" y="624.9532">NumLockOff</text></g><g id="Active.NumLockOn"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="108.3333" x="80.2083
|
||
|
link *start*Active to NumLockOff--><path d="M62.5,630.6152 C66.8438,630.6152 71.1771,630.6152 75.5208,630.6152 " fill="none" id="*start*Active-to-NumLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="81.0104,630.6152,71.6354,626.4486,75.8021,630.6152,71.6354,634.7819,81.0104,630.6152" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[b6ef3c088f5474ecc81df30475e7d61b]
|
||
|
link NumLockOff to NumLockOn--><path d="M81,657.3652 C68.4792,664.4277 57.7604,671.834 54.1667,678.0111 C48.125,688.4173 48.1458,694.6673 54.1667,705.0944 C59.25,713.9069 66.7292,721.1986 75.0938,727.1777 " fill="none" id="NumLockOff-to-NumLockOn" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="79.8229,730.3652,74.3887,721.6634,75.5077,727.4488,69.7224,728.5677,79.8229,730.3652" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="127.0833" x="60.4167" y="696.8282">EvNumLockPressed</text><!--MD5=[3bfddee0d82dc74c927fbeb3d3f2e6a3]
|
||
|
link NumLockOn to NumLockOff--><path d="M179.7292,723.6673 C185.3854,718.2298 190.3646,712.0319 193.75,705.0944 C199.0313,694.2715 198.9792,688.8548 193.75,678.0111 C191.1667,672.6569 187.6354,667.7402 183.5729,663.2611 " fill="none" id="NumLockOn-to-NumLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="179.7083,659.2715,183.2363,668.905,183.3313,663.0132,189.2231,663.1083,179.7083,659.2715" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="127.0833" x="204.1667" y="696.8282">EvNumLockPressed</text><line style="stroke:#2683B9;stroke-width:1.5625;stroke-dasharray:8.0,10.0;" x1="35.4167" x2="348.9583" y1="785.9111" y2="785.9111"/><ellipse cx="52.0833" cy="821.8486" fill="#033C73" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.CONC87.CapsLockOff"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="112.5" x="81.25" y="793.2027"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="81.25" x2="193.75" y1="829.2277" y2="829.2277"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="81.25" x="96.875" y="816.1865">CapsLockOff</text></g><g id="Active.CONC87.CapsLockOn"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="112.5" x="80.2083" y="915.0777"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="80.2083" x2="192.7083" y1="951.1027" y2="951.1027"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="81.25" x="95.8333" y="938.0615">CapsLockOn</text></g><!--MD5=[70bdb58272bc1a7d9e9d21dfe0316432]
|
||
|
link *start*CONC87 to CapsLockOff--><path d="M62.7604,821.8486 C67.0729,821.8486 71.3854,821.8486 75.6979,821.8486 " fill="none" id="*start*CONC87-to-CapsLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="81.1563,821.8486,71.7813,817.6819,75.9479,821.8486,71.7813,826.0152,81.1563,821.8486" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[dc4675bd3056f3ef68701d9e8e02a3f3]
|
||
|
link CapsLockOff to CapsLockOn--><path d="M80.8333,848.9423 C68.3646,855.859 57.7708,863.109 54.1667,869.2444 C48.0625,879.6194 48.0938,885.9319 54.1667,896.3277 C59.3333,905.1715 66.875,912.4527 75.3229,918.4111 " fill="none" id="CapsLockOff-to-CapsLockOn" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="80.1042,921.5881,74.6149,912.9209,75.7706,918.6991,69.9924,919.8547,80.1042,921.5881" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="60.4167" y="888.0615">EvCapsLockPressed</text><!--MD5=[79e17b083e07746bd1a647600952cab6]
|
||
|
link CapsLockOn to CapsLockOff--><path d="M183.6771,914.8381 C189.4167,909.4423 194.4583,903.2652 197.9167,896.3277 C203.2813,885.5569 203.2396,880.0361 197.9167,869.2444 C195.2708,863.8902 191.6875,858.984 187.5625,854.5256 " fill="none" id="CapsLockOn-to-CapsLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="183.6354,850.5673,187.2602,860.1648,187.2959,854.2724,193.1883,854.3081,183.6354,850.5673" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="208.3333" y="888.0615">EvCapsLockPressed</text><line style="stroke:#2683B9;stroke-width:1.5625;stroke-dasharray:8.0,10.0;" x1="35.4167" x2="348.9583" y1="977.1444" y2="977.1444"/><ellipse cx="52.0833" cy="1013.0819" fill="#033C73" rx="10.4167" ry="10.4167" style="stroke:none;stroke-width:1.0416666666666667;"/><g id="Active.CONC95.ScrollLockOff"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="113.5417" x="81.7708" y="984.436"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="81.7708" x2="195.3125" y1="1020.461" y2="1020.461"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="82.2917" x="97.3958" y="1007.4198">ScrollLockOff</text></g><g id="Active.CONC95.ScrollLockOn"><rect fill="url(#g1j9aboxj1b9lo1)" height="56.8583" rx="13.0208" ry="13.0208" style="stroke:#2683B9;stroke-width:1.5625;" width="113.5417" x="81.7708" y="1106.311"/><line style="stroke:#2683B9;stroke-width:1.5625;" x1="81.7708" x2="195.3125" y1="1142.336" y2="1142.336"/><text fill="#FFFFFF" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="82.2917" x="97.3958" y="1129.2948">ScrollLockOn</text></g><!--MD5=[8676698f49c1acec7e35e8e65e103748]
|
||
|
link *start*CONC95 to ScrollLockOff--><path d="M62.5521,1013.0819 C67.1042,1013.0819 71.6563,1013.0819 76.2083,1013.0819 " fill="none" id="*start*CONC95-to-ScrollLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="81.5521,1013.0819,72.1771,1008.9152,76.3438,1013.0819,72.1771,1017.2485,81.5521,1013.0819" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[da4e1e55b4a6de250eca2c82023085fa]
|
||
|
link ScrollLockOff to ScrollLockOn--><path d="M81.7708,1035.4777 C71.5729,1041.936 62.2917,1050.1444 56.25,1060.4777 C50.1771,1070.8735 50.1771,1077.1652 56.25,1087.561 C61.3438,1096.2798 68.75,1103.4881 77.0625,1109.4048 " fill="none" id="ScrollLockOff-to-ScrollLockOn" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="81.7708,1112.561,76.3022,1103.8808,77.4441,1109.6617,71.6633,1110.8036,81.7708,1112.561" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="62.5" y="1079.2948">EvCapsLockPressed</text><!--MD5=[6ad2c621f2407b82317910f4deb17639]
|
||
|
link ScrollLockOn to ScrollLockOff--><path d="M185.7604,1106.0715 C191.5,1100.6756 196.5417,1094.4985 200,1087.561 C205.3646,1076.7902 205.3646,1071.2485 200,1060.4777 C197.3542,1055.1652 193.7708,1050.3006 189.6667,1045.8944 " fill="none" id="ScrollLockOn-to-ScrollLockOff" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="185.7604,1041.9673,189.4239,1051.5501,189.4358,1045.6576,195.3284,1045.6695,185.7604,1041.9673" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="131.25" x="209.375" y="1079.2948">EvCapsLockPressed</text><!--MD5=[242ad121cef04112e9b0ee8f25f52375]
|
||
|
link *start to fork_state--><path d="M192.1875,78.7048 C192.1875,93.5382 192.1875,121.7569 192.1875,136.1632 " fill="none" id="*start-to-fork_state" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="192.1875,141.7153,196.3542,132.3403,192.1875,136.5069,188.0208,132.3403,192.1875,141.7153" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[44dd36eb382d4fffd186e8c447a61da0]
|
||
|
link fork_state to State2--><path d="M190.3542,150.3298 C185.0104,159.4548 169.0104,186.7673 155.9167,209.1319 " fill="none" id="fork_state-to-State2" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="153.1667,213.8298,161.5019,207.8485,155.8002,209.3364,154.3123,203.6348,153.1667,213.8298" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[43d4d70f9cd19f132a5eb1ce9d85c890]
|
||
|
link fork_state to State3--><path d="M194.2708,150.3298 C200.3438,159.4965 218.5833,186.9965 233.4375,209.4132 " fill="none" id="fork_state-to-State3" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="236.3646,213.8298,234.6311,203.7181,233.4755,209.4962,227.6974,208.3406,236.3646,213.8298" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[8cf5ef3a64654818495211b4c165bd62]
|
||
|
link State2 to join_state--><path d="M123.0208,271.3923 C116.1979,289.2153 111.5521,312.1736 122.3958,329.4861 C132.7604,346.0382 153.6146,354.8194 170.0208,359.3507 " fill="none" id="State2-to-join_state" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="175.3958,360.7257,167.3509,354.3593,170.351,359.431,165.2793,362.4311,175.3958,360.7257" style="stroke:#2FA4E7;stroke-width:3.125;"/><text fill="#343A40" font-family="Verdana" font-size="12.5" lengthAdjust="spacing" textLength="98.9583" x="128.6458" y="321.2199">some message</text><!--MD5=[183fde86cac17ac230b97143534e47db]
|
||
|
link State3 to join_state--><path d="M254.2708,271.2986 C252.8542,289.0903 248.8125,312.0382 238.0208,329.4861 C229.9583,342.5278 215.0313,352.4653 204.6354,358.2257 " fill="none" id="State3-to-join_state" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="199.9375,360.7048,210.1728,360.0039,204.5413,358.2693,206.2759,352.6378,199.9375,360.7048" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[1e473d623208eebf6d5ebd6e9bc5a11d]
|
||
|
link join_state to State4--><path d="M193.2292,369.0798 C193.2292,378.1319 193.2292,405.0694 193.2292,427.3194 " fill="none" id="join_state-to-State4" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="193.2292,432.5798,197.3958,423.2048,193.2292,427.3715,189.0625,423.2048,193.2292,432.5798" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[0a70b1a7cf318979336334b4227eefe4]
|
||
|
link State4 to Active--><path d="M193.2292,490.1111 C193.2292,504.934 193.2292,524.8507 193.2292,547.809 " fill="none" id="State4-to-Active" style="stroke:#2FA4E7;stroke-width:3.125;"/><polygon fill="#2FA4E7" points="193.2292,553.059,197.3958,543.684,193.2292,547.8507,189.0625,543.684,193.2292,553.059" style="stroke:#2FA4E7;stroke-width:3.125;"/><!--MD5=[2aeb03cae3e8ecfdc841797fa1d91a6c]
|
||
|
@startuml
|
||
|
|
||
|
!$THEME = "cerulean"
|
||
|
|
||
|
!if %not(%variable_exists("$BGCOLOR"))
|
||
|
!$BGCOLOR = "transparent"
|
||
|
!endif
|
||
|
|
||
|
skinparam backgroundColor $BGCOLOR
|
||
|
skinparam useBetaStyle false
|
||
|
|
||
|
!$BLUE = "#033C73"
|
||
|
!$INDIGO = "#6610F2"
|
||
|
!$PURPLE = "#6F42C1"
|
||
|
!$PINK = "#E83E8C"
|
||
|
!$RED = "#C71C22"
|
||
|
!$ORANGE = "#FD7E14"
|
||
|
!$YELLOW = "#DD5600"
|
||
|
!$GREEN = "#73A839"
|
||
|
!$TEAL = "#20C997"
|
||
|
!$CYAN = "#2FA4E7"
|
||
|
!$WHITE = "#FFF"
|
||
|
!$GRAY_DARK = "#343A40"
|
||
|
!$GRAY = "#868E96"
|
||
|
!$PRIMARY = "#2FA4E7"
|
||
|
!$SECONDARY = "#E9ECEF"
|
||
|
!$SUCCESS = "#73A839"
|
||
|
!$INFO = "#033C73"
|
||
|
!$WARNING = "#DD5600"
|
||
|
!$DANGER = "#C71C22"
|
||
|
!$LIGHT = "#F8F9FA"
|
||
|
!$DARK = "#343A40"
|
||
|
|
||
|
!$FGCOLOR = $DARK
|
||
|
!$PRIMARY_LIGHT = "#59B6EC"
|
||
|
!$PRIMARY_DARK = "#2683B9"
|
||
|
!$PRIMARY_TEXT = $WHITE
|
||
|
!$SECONDARY_LIGHT = "#EDF0F2"
|
||
|
!$SECONDARY_DARK = "#BABDBF"
|
||
|
!$SECONDARY_TEXT = $DARK
|
||
|
!$INFO_LIGHT = "#35638F"
|
||
|
!$INFO_DARK = "#02305C"
|
||
|
!$INFO_TEXT = $WHITE
|
||
|
!$SUCCESS_LIGHT = "#8FB961"
|
||
|
!$SUCCESS_DARK = "#5C862E"
|
||
|
!$SUCCESS_TEXT = $WHITE
|
||
|
!$WARNING_LIGHT = "#E47833"
|
||
|
!$WARNING_DARK = "#B14500"
|
||
|
!$WARNING_TEXT = $WHITE
|
||
|
!$DANGER_LIGHT = "#D2494E"
|
||
|
!$DANGER_DARK = "#9F161B"
|
||
|
!$DANGER_TEXT = $WHITE
|
||
|
|
||
|
!procedure $success($msg)
|
||
|
<font color=$SUCCESS><b>$msg
|
||
|
!endprocedure
|
||
|
|
||
|
!procedure $failure($msg)
|
||
|
<font color=$DANGER><b>$msg
|
||
|
!endprocedure
|
||
|
|
||
|
!procedure $warning($msg)
|
||
|
<font color=$WARNING><b>$msg
|
||
|
!endprocedure
|
||
|
|
||
|
!procedure $primary_scheme()
|
||
|
FontColor $PRIMARY_TEXT
|
||
|
BorderColor $PRIMARY
|
||
|
BackgroundColor $PRIMARY_LIGHT-$PRIMARY
|
||
|
!endprocedure
|
||
|
|
||
|
skinparam defaultFontName "Verdana"
|
||
|
skinparam defaultFontSize 12
|
||
|
skinparam dpi 100
|
||
|
skinparam shadowing false
|
||
|
skinparam roundcorner 8
|
||
|
skinparam ParticipantPadding 40
|
||
|
skinparam BoxPadding 40
|
||
|
skinparam Padding 5
|
||
|
skinparam ArrowColor $GRAY
|
||
|
skinparam stereotype {
|
||
|
CBackgroundColor $SECONDARY_LIGHT
|
||
|
CBorderColor $SECONDARY_DARK
|
||
|
ABackgroundColor $SUCCESS_LIGHT
|
||
|
ABorderColor $SUCCESS_DARK
|
||
|
IBackgroundColor $DANGER_LIGHT
|
||
|
IBorderColor $DANGER_DARK
|
||
|
EBackgroundColor $WARNING_LIGHT
|
||
|
EBorderColor $WARNING_DARK
|
||
|
NBackgroundColor $INFO_LIGHT
|
||
|
NBorderColor $INFO_DARK
|
||
|
}
|
||
|
skinparam title {
|
||
|
FontColor $PRIMARY
|
||
|
BorderColor $SECONDARY_DARK
|
||
|
FontSize 20
|
||
|
BorderRoundCorner 8
|
||
|
BorderThickness 1
|
||
|
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam legend {
|
||
|
BackgroundColor $SECONDARY
|
||
|
BorderColor $SECONDARY_DARK
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
|
||
|
!startsub swimlane
|
||
|
skinparam swimlane {
|
||
|
BorderColor $INFO
|
||
|
BorderThickness 2
|
||
|
TitleBackgroundColor $SECONDARY_LIGHT-$SECONDARY
|
||
|
TitleFontColor $PRIMARY
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub activity
|
||
|
|
||
|
skinparam activity {
|
||
|
$primary_scheme()
|
||
|
BarColor $SUCCESS
|
||
|
StartColor $INFO
|
||
|
EndColor $INFO
|
||
|
DiamondBackgroundColor $WHITE-$SECONDARY_LIGHT
|
||
|
DiamondBorderColor $SECONDARY_DARK
|
||
|
DiamondFontColor $SECONDARY_TEXT
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub participant
|
||
|
|
||
|
skinparam participant {
|
||
|
$primary_scheme()
|
||
|
ParticipantBorderThickness 2
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub actor
|
||
|
|
||
|
skinparam actor {
|
||
|
$primary_scheme()
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub arrow
|
||
|
|
||
|
skinparam arrow {
|
||
|
Thickness 3
|
||
|
Color $PRIMARY
|
||
|
FontColor $FGCOLOR
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub sequence
|
||
|
|
||
|
skinparam sequence {
|
||
|
BorderColor $PRIMARY
|
||
|
TitleFontColor $PRIMARY
|
||
|
BackgroundColor $BGCOLOR
|
||
|
StartColor $PRIMARY
|
||
|
EndColor $PRIMARY
|
||
|
BoxBackgroundColor $BGCOLOR
|
||
|
BoxBorderColor $GRAY
|
||
|
BoxFontColor $DARK
|
||
|
LifeLineBorderColor $SECONDARY_DARK
|
||
|
LifeLineBorderThickness 2
|
||
|
LifeLineBackgroundColor $SECONDARY_LIGHT
|
||
|
GroupBorderColor $GRAY
|
||
|
GroupFontColor $DARK
|
||
|
GroupHeaderFontColor $INFO
|
||
|
GroupBackgroundColor $SECONDARY
|
||
|
GroupBodyBackgroundColor $BGCOLOR
|
||
|
GroupHeaderBackgroundColor $BGCOLOR
|
||
|
DividerBackgroundColor $WHITE-$LIGHT
|
||
|
DividerBorderColor $GRAY
|
||
|
DividerBorderThickness 2
|
||
|
DividerFontColor $DARK
|
||
|
ReferenceBackgroundColor $BGCOLOR
|
||
|
ReferenceBorderColor $GRAY
|
||
|
ReferenceFontColor $DARK
|
||
|
ReferenceHeaderFontColor $INFO
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub partition
|
||
|
|
||
|
skinparam partition {
|
||
|
BorderColor $PRIMARY
|
||
|
FontColor $PRIMARY
|
||
|
BackgroundColor $BGCOLOR
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub collections
|
||
|
|
||
|
skinparam collections {
|
||
|
$primary_scheme()
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub control
|
||
|
|
||
|
skinparam control {
|
||
|
$primary_scheme()
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub entity
|
||
|
|
||
|
skinparam entity {
|
||
|
$primary_scheme()
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub boundary
|
||
|
|
||
|
skinparam boundary {
|
||
|
$primary_scheme()
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub agent
|
||
|
|
||
|
skinparam agent {
|
||
|
BackgroundColor #orange
|
||
|
BorderColor #999999
|
||
|
FontColor #333333
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub note
|
||
|
|
||
|
skinparam note {
|
||
|
BorderThickness 1
|
||
|
BackgroundColor $INFO_LIGHT-$INFO
|
||
|
BorderColor $INFO
|
||
|
FontColor $WHITE
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub artifact
|
||
|
|
||
|
skinparam artifact {
|
||
|
BackgroundColor $WHITE-$LIGHT
|
||
|
BorderColor $SECONDARY_DARK
|
||
|
FontColor $SECONDARY_TEXT
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub component
|
||
|
|
||
|
skinparam component {
|
||
|
$primary_scheme()
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub interface
|
||
|
|
||
|
skinparam interface {
|
||
|
BackgroundColor $DANGER_LIGHT
|
||
|
BorderColor $DANGER
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub storage
|
||
|
|
||
|
skinparam storage {
|
||
|
BackgroundColor $WARNING_LIGHT-$WARNING
|
||
|
BorderColor $WARNING
|
||
|
FontColor $WARNING_TEXT
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub node
|
||
|
|
||
|
skinparam node {
|
||
|
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
|
||
|
BorderColor $SECONDARY
|
||
|
FontColor $SECONDARY_TEXT
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub cloud
|
||
|
|
||
|
skinparam cloud {
|
||
|
BackgroundColor transparent
|
||
|
BorderColor #F2FCFE
|
||
|
FontColor $PRIMARY
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub database
|
||
|
|
||
|
skinparam database {
|
||
|
$primary_scheme()
|
||
|
FontColor $DARK
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub class
|
||
|
|
||
|
skinparam class {
|
||
|
$primary_scheme()
|
||
|
HeaderBackgroundColor $PRIMARY-$PRIMARY_DARK
|
||
|
StereotypeFontColor $DARK
|
||
|
BorderThickness 1
|
||
|
AttributeFontColor $LIGHT
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub object
|
||
|
|
||
|
skinparam object {
|
||
|
$primary_scheme()
|
||
|
StereotypeFontColor $DARK
|
||
|
BorderThickness 1
|
||
|
AttributeFontColor $SECONDARY_TEXT
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub usecase
|
||
|
|
||
|
skinparam usecase {
|
||
|
$primary_scheme()
|
||
|
BorderThickness 2
|
||
|
StereotypeFontColor $PRIMARY
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub rectangle
|
||
|
|
||
|
skinparam rectangle {
|
||
|
FontColor $PRIMARY
|
||
|
BorderColor $PRIMARY_LIGHT
|
||
|
BackgroundColor $BGCOLOR
|
||
|
BorderThickness 2
|
||
|
StereotypeFontColor $PRIMARY
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub package
|
||
|
|
||
|
skinparam package {
|
||
|
FontColor $PRIMARY
|
||
|
BorderColor $PRIMARY_LIGHT
|
||
|
BackgroundColor $BGCOLOR
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub folder
|
||
|
|
||
|
skinparam folder {
|
||
|
BackgroundColor $WHITE-$SECONDARY_LIGHT
|
||
|
BorderColor $WARNING
|
||
|
FontColor $WARNING
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub frame
|
||
|
|
||
|
skinparam frame {
|
||
|
BackgroundColor $WHITE-$SECONDARY_LIGHT
|
||
|
BorderColor $INFO
|
||
|
FontColor $INFO
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub state
|
||
|
|
||
|
skinparam state {
|
||
|
$primary_scheme()
|
||
|
BorderColor $PRIMARY_DARK
|
||
|
StartColor $INFO
|
||
|
EndColor $INFO
|
||
|
AttributeFontColor $SECONDARY_TEXT
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub queue
|
||
|
|
||
|
skinparam queue {
|
||
|
$primary_scheme()
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub card
|
||
|
|
||
|
skinparam card {
|
||
|
BackgroundColor $INFO_LIGHT-$INFO
|
||
|
BorderColor $INFO
|
||
|
FontColor $INFO_TEXT
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub file
|
||
|
|
||
|
skinparam file {
|
||
|
BackgroundColor $SECONDARY_LIGHT-$SECONDARY
|
||
|
BorderColor $INFO
|
||
|
FontColor $GRAY
|
||
|
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!startsub stack
|
||
|
|
||
|
skinparam stack {
|
||
|
$primary_scheme()
|
||
|
}
|
||
|
!endsub
|
||
|
|
||
|
!if %variable_exists("$THEME")
|
||
|
title State Diagram - $THEME theme
|
||
|
!else
|
||
|
title State Diagram
|
||
|
!endif
|
||
|
|
||
|
'skinparam BackgroundColor transparent
|
||
|
|
||
|
state fork_state <<fork>>
|
||
|
[*] - -> fork_state
|
||
|
fork_state - -> State2
|
||
|
fork_state - -> State3
|
||
|
|
||
|
state join_state <<join>>
|
||
|
State2 - -> join_state: some message
|
||
|
State3 - -> join_state
|
||
|
join_state - -> State4
|
||
|
State4 - -> Active
|
||
|
|
||
|
state Active {
|
||
|
[*] -> NumLockOff
|
||
|
NumLockOff - -> NumLockOn : EvNumLockPressed
|
||
|
NumLockOn - -> NumLockOff : EvNumLockPressed
|
||
|
- -
|
||
|
[*] -> CapsLockOff
|
||
|
CapsLockOff - -> CapsLockOn : EvCapsLockPressed
|
||
|
CapsLockOn - -> CapsLockOff : EvCapsLockPressed
|
||
|
- -
|
||
|
[*] -> ScrollLockOff
|
||
|
ScrollLockOff - -> ScrollLockOn : EvCapsLockPressed
|
||
|
ScrollLockOn - -> ScrollLockOff : EvCapsLockPressed
|
||
|
}
|
||
|
|
||
|
@enduml
|
||
|
|
||
|
@startuml
|
||
|
|
||
|
|
||
|
|
||
|
skinparam backgroundColor transparent
|
||
|
skinparam useBetaStyle false
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
skinparam defaultFontName "Verdana"
|
||
|
skinparam defaultFontSize 12
|
||
|
skinparam dpi 100
|
||
|
skinparam shadowing false
|
||
|
skinparam roundcorner 8
|
||
|
skinparam ParticipantPadding 40
|
||
|
skinparam BoxPadding 40
|
||
|
skinparam Padding 5
|
||
|
skinparam ArrowColor #868E96
|
||
|
skinparam stereotype {
|
||
|
CBackgroundColor #EDF0F2
|
||
|
CBorderColor #BABDBF
|
||
|
ABackgroundColor #8FB961
|
||
|
ABorderColor #5C862E
|
||
|
IBackgroundColor #D2494E
|
||
|
IBorderColor #9F161B
|
||
|
EBackgroundColor #E47833
|
||
|
EBorderColor #B14500
|
||
|
NBackgroundColor #35638F
|
||
|
NBorderColor #02305C
|
||
|
}
|
||
|
skinparam title {
|
||
|
FontColor #2FA4E7
|
||
|
BorderColor #BABDBF
|
||
|
FontSize 20
|
||
|
BorderRoundCorner 8
|
||
|
BorderThickness 1
|
||
|
BackgroundColor #EDF0F2-#E9ECEF
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam legend {
|
||
|
BackgroundColor #E9ECEF
|
||
|
BorderColor #BABDBF
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
skinparam swimlane {
|
||
|
BorderColor #033C73
|
||
|
BorderThickness 2
|
||
|
TitleBackgroundColor #EDF0F2-#E9ECEF
|
||
|
TitleFontColor #2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam activity {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
BarColor #73A839
|
||
|
StartColor #033C73
|
||
|
EndColor #033C73
|
||
|
DiamondBackgroundColor #FFF-#EDF0F2
|
||
|
DiamondBorderColor #BABDBF
|
||
|
DiamondFontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam participant {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
ParticipantBorderThickness 2
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam actor {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam arrow {
|
||
|
Thickness 3
|
||
|
Color #2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam sequence {
|
||
|
BorderColor #2FA4E7
|
||
|
TitleFontColor #2FA4E7
|
||
|
BackgroundColor transparent
|
||
|
StartColor #2FA4E7
|
||
|
EndColor #2FA4E7
|
||
|
BoxBackgroundColor transparent
|
||
|
BoxBorderColor #868E96
|
||
|
BoxFontColor #343A40
|
||
|
LifeLineBorderColor #BABDBF
|
||
|
LifeLineBorderThickness 2
|
||
|
LifeLineBackgroundColor #EDF0F2
|
||
|
GroupBorderColor #868E96
|
||
|
GroupFontColor #343A40
|
||
|
GroupHeaderFontColor #033C73
|
||
|
GroupBackgroundColor #E9ECEF
|
||
|
GroupBodyBackgroundColor transparent
|
||
|
GroupHeaderBackgroundColor transparent
|
||
|
DividerBackgroundColor #FFF-#F8F9FA
|
||
|
DividerBorderColor #868E96
|
||
|
DividerBorderThickness 2
|
||
|
DividerFontColor #343A40
|
||
|
ReferenceBackgroundColor transparent
|
||
|
ReferenceBorderColor #868E96
|
||
|
ReferenceFontColor #343A40
|
||
|
ReferenceHeaderFontColor #033C73
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam partition {
|
||
|
BorderColor #2FA4E7
|
||
|
FontColor #2FA4E7
|
||
|
BackgroundColor transparent
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam collections {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam control {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam entity {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam boundary {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam agent {
|
||
|
BackgroundColor #orange
|
||
|
BorderColor #999999
|
||
|
FontColor #333333
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam note {
|
||
|
BorderThickness 1
|
||
|
BackgroundColor #35638F-#033C73
|
||
|
BorderColor #033C73
|
||
|
FontColor #FFF
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam artifact {
|
||
|
BackgroundColor #FFF-#F8F9FA
|
||
|
BorderColor #BABDBF
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam component {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam interface {
|
||
|
BackgroundColor #D2494E
|
||
|
BorderColor #C71C22
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam storage {
|
||
|
BackgroundColor #E47833-#DD5600
|
||
|
BorderColor #DD5600
|
||
|
FontColor #FFF
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam node {
|
||
|
BackgroundColor #EDF0F2-#E9ECEF
|
||
|
BorderColor #E9ECEF
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam cloud {
|
||
|
BackgroundColor transparent
|
||
|
BorderColor #F2FCFE
|
||
|
FontColor #2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam database {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
FontColor #343A40
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam class {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
HeaderBackgroundColor #2FA4E7-#2683B9
|
||
|
StereotypeFontColor #343A40
|
||
|
BorderThickness 1
|
||
|
AttributeFontColor #F8F9FA
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam object {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
StereotypeFontColor #343A40
|
||
|
BorderThickness 1
|
||
|
AttributeFontColor #343A40
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam usecase {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
BorderThickness 2
|
||
|
StereotypeFontColor #2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam rectangle {
|
||
|
FontColor #2FA4E7
|
||
|
BorderColor #59B6EC
|
||
|
BackgroundColor transparent
|
||
|
BorderThickness 2
|
||
|
StereotypeFontColor #2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam package {
|
||
|
FontColor #2FA4E7
|
||
|
BorderColor #59B6EC
|
||
|
BackgroundColor transparent
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam folder {
|
||
|
BackgroundColor #FFF-#EDF0F2
|
||
|
BorderColor #DD5600
|
||
|
FontColor #DD5600
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam frame {
|
||
|
BackgroundColor #FFF-#EDF0F2
|
||
|
BorderColor #033C73
|
||
|
FontColor #033C73
|
||
|
BorderThickness 2
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam state {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
BorderColor #2683B9
|
||
|
StartColor #033C73
|
||
|
EndColor #033C73
|
||
|
AttributeFontColor #343A40
|
||
|
AttributeFontSize 11
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam queue {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam card {
|
||
|
BackgroundColor #35638F-#033C73
|
||
|
BorderColor #033C73
|
||
|
FontColor #FFF
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam file {
|
||
|
BackgroundColor #EDF0F2-#E9ECEF
|
||
|
BorderColor #033C73
|
||
|
FontColor #868E96
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
skinparam stack {
|
||
|
FontColor #FFF
|
||
|
BorderColor #2FA4E7
|
||
|
BackgroundColor #59B6EC-#2FA4E7
|
||
|
}
|
||
|
|
||
|
title State Diagram - cerulean theme
|
||
|
|
||
|
|
||
|
state fork_state <<fork>>
|
||
|
[*] - -> fork_state
|
||
|
fork_state - -> State2
|
||
|
fork_state - -> State3
|
||
|
|
||
|
state join_state <<join>>
|
||
|
State2 - -> join_state: some message
|
||
|
State3 - -> join_state
|
||
|
join_state - -> State4
|
||
|
State4 - -> Active
|
||
|
|
||
|
state Active {
|
||
|
[*] -> NumLockOff
|
||
|
NumLockOff - -> NumLockOn : EvNumLockPressed
|
||
|
NumLockOn - -> NumLockOff : EvNumLockPressed
|
||
|
- -
|
||
|
[*] -> CapsLockOff
|
||
|
CapsLockOff - -> CapsLockOn : EvCapsLockPressed
|
||
|
CapsLockOn - -> CapsLockOff : EvCapsLockPressed
|
||
|
- -
|
||
|
[*] -> ScrollLockOff
|
||
|
ScrollLockOff - -> ScrollLockOn : EvCapsLockPressed
|
||
|
ScrollLockOn - -> ScrollLockOff : EvCapsLockPressed
|
||
|
}
|
||
|
|
||
|
@enduml
|
||
|
|
||
|
PlantUML version 1.2021.01(Mon Feb 01 23:55:08 PST 2021)
|
||
|
(GPL source distribution)
|
||
|
Java Runtime: OpenJDK Runtime Environment
|
||
|
JVM: OpenJDK 64-Bit Server VM
|
||
|
Default Encoding: UTF-8
|
||
|
Language: en
|
||
|
Country: US
|
||
|
--></g></svg>
|