java_web/test05/test05.svg

1 line
124 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentStyleType="text/css" data-diagram-type="CLASS" height="931px" preserveAspectRatio="none" style="width:6082px;height:931px;background:#FFFFFF;" version="1.1" viewBox="0 0 6082 931" width="6082px" zoomAndPan="magnify"><defs/><g><!--cluster test05--><g class="cluster" data-entity="test05" data-source-line="4" data-uid="ent0003" id="cluster_test05"><path d="M9,6.6563 L52.1758,6.6563 A4.5,4.5 0 0 1 55.1758,9.6563 L62.1758,31.5508 L6072,31.5508 A3,3 0 0 1 6075,34.5508 L6075,921.9163 A3,3 0 0 1 6072,924.9163 L9,924.9163 A3,3 0 0 1 6,921.9163 L6,9.6563 A3,3 0 0 1 9,6.6563" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="6" x2="62.1758" y1="31.5508" y2="31.5508"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="43.1758" x="10" y="23.3945">test05</text></g><!--cluster aop--><g class="cluster" data-entity="aop" data-source-line="9" data-uid="ent0005" id="cluster_aop"><path d="M33,155.5762 L56.9531,155.5762 A4.5,4.5 0 0 1 59.9531,158.5762 L66.9531,180.4708 L381,180.4708 A3,3 0 0 1 384,183.4708 L384,272.4762 A3,3 0 0 1 381,275.4762 L33,275.4762 A3,3 0 0 1 30,272.4762 L30,158.5762 A3,3 0 0 1 33,155.5762" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="30" x2="66.9531" y1="180.4708" y2="180.4708"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="23.9531" x="34" y="172.3145">aop</text></g><!--cluster config--><g class="cluster" data-entity="config" data-source-line="13" data-uid="ent0007" id="cluster_config"><path d="M33,422.2863 L71.9785,422.2863 A4.5,4.5 0 0 1 74.9785,425.2863 L81.9785,447.1808 L562,447.1808 A3,3 0 0 1 565,450.1808 L565,576.9663 A3,3 0 0 1 562,579.9663 L33,579.9663 A3,3 0 0 1 30,576.9663 L30,425.2863 A3,3 0 0 1 33,422.2863" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="30" x2="81.9785" y1="447.1808" y2="447.1808"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="38.9785" x="34" y="439.0245">config</text></g><!--cluster controller--><g class="cluster" data-entity="controller" data-source-line="26" data-uid="ent0010" id="cluster_controller"><path d="M3224,643.6563 L3285.3867,643.6563 A4.5,4.5 0 0 1 3288.3867,646.6563 L3295.3867,668.5508 L5821,668.5508 A3,3 0 0 1 5824,671.5508 L5824,855.0263 A3,3 0 0 1 5821,858.0263 L3224,858.0263 A3,3 0 0 1 3221,855.0263 L3221,646.6563 A3,3 0 0 1 3224,643.6563" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="3221" x2="3295.3867" y1="668.5508" y2="668.5508"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="61.3867" x="3225" y="660.3945">controller</text></g><!--cluster exception--><g class="cluster" data-entity="exception" data-source-line="74" data-uid="ent0017" id="cluster_exception"><path d="M904,441.1863 L966.3574,441.1863 A4.5,4.5 0 0 1 969.3574,444.1863 L976.3574,466.0808 L1106,466.0808 A3,3 0 0 1 1109,469.0808 L1109,558.0763 A3,3 0 0 1 1106,561.0763 L904,561.0763 A3,3 0 0 1 901,558.0763 L901,444.1863 A3,3 0 0 1 904,441.1863" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="901" x2="976.3574" y1="466.0808" y2="466.0808"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="62.3574" x="905" y="457.9245">exception</text></g><!--cluster interceptor--><g class="cluster" data-entity="interceptor" data-source-line="78" data-uid="ent0019" id="cluster_interceptor"><path d="M411,136.6862 L481.4922,136.6862 A4.5,4.5 0 0 1 484.4922,139.6862 L491.4922,161.5808 L1221,161.5808 A3,3 0 0 1 1224,164.5808 L1224,291.3663 A3,3 0 0 1 1221,294.3663 L411,294.3663 A3,3 0 0 1 408,291.3663 L408,139.6862 A3,3 0 0 1 411,136.6862" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="408" x2="491.4922" y1="161.5808" y2="161.5808"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="70.4922" x="412" y="153.4245">interceptor</text></g><!--cluster mapper--><g class="cluster" data-entity="mapper" data-source-line="84" data-uid="ent0021" id="cluster_mapper"><path d="M3224,403.3963 L3272.7539,403.3963 A4.5,4.5 0 0 1 3275.7539,406.3963 L3282.7539,428.2908 L5104,428.2908 A3,3 0 0 1 5107,431.2908 L5107,595.8663 A3,3 0 0 1 5104,598.8663 L3224,598.8663 A3,3 0 0 1 3221,595.8663 L3221,406.3963 A3,3 0 0 1 3224,403.3963" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="3221" x2="3282.7539" y1="428.2908" y2="428.2908"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="48.7539" x="3225" y="420.1345">mapper</text></g><!--cluster pojo--><g class="cluster" data-entity="pojo" data-source-line="124" data-uid="ent0027" id="cluster_pojo"><path d="M2343,51.6563 L2370.4668,51.6563 A4.5,4.5 0 0 1 2373.4668,54.6563 L2380.4668,76.5508 L3474,76.5508 A3,3 0 0 1 3477,79.5508 L3477,376.3963 A3,3 0 0 1 3474,379.3963 L2343,379.3963 A3,3 0 0 1 2340,376.3963 L2340,54.6563 A3,3 0 0 1 2343,51.6563" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="2340" x2="2380.4668" y1="76.5508" y2="76.5508"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="27.4668" x="2344" y="68.3945">pojo</text></g><!--cluster service--><g class="cluster" data-entity="service" data-source-line="183" data-uid="ent0034" id="cluster_service"><path d="M1136,403.3963 L1182.1152,403.3963 A4.5,4.5 0 0 1 1185.1152,406.3963 L1192.1152,428.2908 L3194,428.2908 A3,3 0 0 1 3197,431.2908 L3197,897.9163 A3,3 0 0 1 3194,900.9163 L1136,900.9163 A3,3 0 0 1 1133,897.9163 L1133,406.3963 A3,3 0 0 1 1136,403.3963" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="1133" x2="1192.1152" y1="428.2908" y2="428.2908"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="46.1152" x="1137" y="420.1345">service</text></g><!--cluster impl--><g class="cluster" data-entity="impl" data-source-line="216" data-uid="ent0040" id="cluster_impl"><path d="M1160,624.7562 L1187.4668,624.7562 A4.5,4.5 0 0 1 1190.4668,627.7562 L1197.4668,649.6508 L3170,649.6508 A3,3 0 0 1 3173,652.6508 L3173,873.9163 A3,3 0 0 1 3170,876.9163 L1160,876.9163 A3,3 0 0 1 1157,873.9163 L1157,627.7562 A3,3 0 0 1 1160,624.7562" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="1157" x2="1197.4668" y1="649.6508" y2="649.6508"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="27.4668" x="1161" y="641.4945">impl</text></g><!--cluster utils--><g class="cluster" data-entity="utils" data-source-line="263" data-uid="ent0046" id="cluster_utils"><path d="M4397,108.3462 L4425.1777,108.3462 A4.5,4.5 0 0 1 4428.1777,111.3462 L4435.1777,133.2408 L4869,133.2408 A3,3 0 0 1 4872,136.2408 L4872,319.7062 A3,3 0 0 1 4869,322.7062 L4397,322.7062 A3,3 0 0 1 4394,319.7062 L4394,111.3462 A3,3 0 0 1 4397,108.3462" fill="none" style="stroke:#000000;stroke-width:1.5;"/><line style="stroke:#000000;stroke-width:1.5;" x1="4394" x2="4435.1777" y1="133.2408" y2="133.2408"/><text fill="#000000" font-family="sans-serif" font-size="14" font-weight="bold" lengthAdjust="spacing" textLength="28.1777" x="4398" y="125.0845">utils</text></g><!--class Test05Application--><g class="entity" data-entity="Test05Application" data-source-line="4" data-uid="ent0002" id="entity_Test05Application"><rect fill="#F1F1F1" height="85.7891" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="434.3789" x="5336.81" y="183.1263"/><ellipse cx="5494.809" cy="199.1263" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M5490.2465,198.595 Q5490.2465,195.1731 5491.3246,193.5638 Q5492.4184,191.9544 5494.5903,191.9544 Q5495.7778,191.9544 5496.9809,192.5794 L5496.9809,194.4388 Q5495.6371,193.72 5494.6684,193.72 Q5492.1371,193.72 5492.1371,198.595 Q5492.1371,201.3138 5492.7934,202.4075 Q5493.4496,203.4856 5494.6684,203.4856 Q5495.6528,203.4856 5497.059,202.6263 L5497.059,204.6419 Q5495.8559,205.2356 5494.5903,205.2356 Q5492.3715,205.2356 5491.309,203.6888 Q5490.2465,202.1263 5490.2465,198.595 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="109.8809" x="5515.309" y="204.4173">Test05Application</text><line style="stroke:#181818;stroke-width:0.5;" x1="5337.81" x2="5770.1889" y1="215.1263" y2="215.1263"/><line style="stroke:#181818;stroke-width:0.5;" x1="5337.81" x2="5770.1889" y1="223.1263" y2="223.1263"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="145.6875" x="5342.81" y="241.8645">+main(String args): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="422.3789" x="5342.81" y="260.7591">#configure(SpringApplicationBuilder builder): SpringApplicationBuilder</text></g><!--class Test05ApplicationTests--><g class="entity" data-entity="Test05ApplicationTests" data-source-line="273" data-uid="ent0047" id="entity_Test05ApplicationTests"><rect fill="#F1F1F1" height="236.9453" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="215.2598" x="5843.37" y="642.8663"/><ellipse cx="5876.2865" cy="658.8663" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M5871.724,658.335 Q5871.724,654.9131 5872.8021,653.3038 Q5873.8959,651.6944 5876.0678,651.6944 Q5877.2553,651.6944 5878.4584,652.3194 L5878.4584,654.1788 Q5877.1146,653.46 5876.1459,653.46 Q5873.6146,653.46 5873.6146,658.335 Q5873.6146,661.0538 5874.2709,662.1475 Q5874.9271,663.2256 5876.1459,663.2256 Q5877.1303,663.2256 5878.5365,662.3663 L5878.5365,664.3819 Q5877.3334,664.9756 5876.0678,664.9756 Q5873.849,664.9756 5872.7865,663.4288 Q5871.724,661.8663 5871.724,658.335 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="143.4453" x="5894.2679" y="664.1573">Test05ApplicationTests</text><line style="stroke:#181818;stroke-width:0.5;" x1="5844.37" x2="6057.6298" y1="674.8663" y2="674.8663"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="193.1973" x="5849.37" y="693.6045">~courseMapper: CourseMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="177.543" x="5849.37" y="712.4991">~scoreMapper: ScoreMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="203.2461" x="5849.37" y="731.3936">~studentMapper: StudentMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="203.2598" x="5849.37" y="750.2881">~teacherMapper: TeacherMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="164.1309" x="5849.37" y="769.1827">~userMapper: UserMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="5844.37" x2="6057.6298" y1="777.3389" y2="777.3389"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="163.2969" x="5849.37" y="796.0772">+courseMapperTest(): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="168.6016" x="5849.37" y="814.9717">+studentMapperTest(): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="168.041" x="5849.37" y="833.8663">+teacherMapperTest(): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="149.0371" x="5849.37" y="852.7608">+userMapperTest(): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="117.4551" x="5849.37" y="871.6553">+genJwtTest(): void</text></g><!--class TimeAspect--><g class="entity" data-entity="TimeAspect" data-source-line="9" data-uid="ent0004" id="entity_TimeAspect"><rect fill="#F1F1F1" height="66.8945" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="321.7773" x="46.11" y="192.5762"/><ellipse cx="167.3727" cy="208.5762" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M162.8102,208.045 Q162.8102,204.6231 163.8883,203.0137 Q164.9821,201.4044 167.1539,201.4044 Q168.3414,201.4044 169.5446,202.0294 L169.5446,203.8887 Q168.2008,203.17 167.2321,203.17 Q164.7008,203.17 164.7008,208.045 Q164.7008,210.7637 165.3571,211.8575 Q166.0133,212.9356 167.2321,212.9356 Q168.2164,212.9356 169.6227,212.0762 L169.6227,214.0919 Q168.4196,214.6856 167.1539,214.6856 Q164.9352,214.6856 163.8727,213.1387 Q162.8102,211.5762 162.8102,208.045 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="70.752" x="187.8727" y="213.8673">TimeAspect</text><line style="stroke:#181818;stroke-width:0.5;" x1="47.11" x2="366.8873" y1="224.5762" y2="224.5762"/><line style="stroke:#181818;stroke-width:0.5;" x1="47.11" x2="366.8873" y1="232.5762" y2="232.5762"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="309.7773" x="52.11" y="251.3145">+recordTime(ProceedingJoinPoint joinPoint): Object</text></g><!--class DatabaseConfig--><g class="entity" data-entity="DatabaseConfig" data-source-line="13" data-uid="ent0006" id="entity_DatabaseConfig"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="147.0371" x="46.48" y="459.2863"/><ellipse cx="69.5897" cy="475.2863" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M65.0272,474.755 Q65.0272,471.3331 66.1053,469.7238 Q67.199,468.1144 69.3709,468.1144 Q70.5584,468.1144 71.7615,468.7394 L71.7615,470.5988 Q70.4178,469.88 69.449,469.88 Q66.9178,469.88 66.9178,474.755 Q66.9178,477.4738 67.574,478.5675 Q68.2303,479.6456 69.449,479.6456 Q70.4334,479.6456 71.8397,478.7863 L71.8397,480.8019 Q70.6365,481.3956 69.3709,481.3956 Q67.1522,481.3956 66.0897,479.8488 Q65.0272,478.2863 65.0272,474.755 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97.0156" x="85.3918" y="480.5773">DatabaseConfig</text><line style="stroke:#181818;stroke-width:0.5;" x1="47.48" x2="192.5171" y1="491.2863" y2="491.2863"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="135.0371" x="52.48" y="510.0245">~ds: DruidDataSource</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="97.002" x="52.48" y="528.9191">~input: Boolean</text><line style="stroke:#181818;stroke-width:0.5;" x1="47.48" x2="192.5171" y1="537.0753" y2="537.0753"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="68.4961" x="52.48" y="555.8136">+init(): void</text></g><!--class WebConfig--><g class="entity" data-entity="WebConfig" data-source-line="20" data-uid="ent0008" id="entity_WebConfig"><rect fill="#F1F1F1" height="85.7891" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="320.9434" x="228.53" y="468.7363"/><ellipse cx="352.3152" cy="484.7363" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M347.7527,484.205 Q347.7527,480.7831 348.8308,479.1738 Q349.9245,477.5644 352.0964,477.5644 Q353.2839,477.5644 354.487,478.1894 L354.487,480.0488 Q353.1433,479.33 352.1745,479.33 Q349.6433,479.33 349.6433,484.205 Q349.6433,486.9238 350.2995,488.0175 Q350.9558,489.0956 352.1745,489.0956 Q353.1589,489.0956 354.5652,488.2363 L354.5652,490.2519 Q353.362,490.8456 352.0964,490.8456 Q349.8777,490.8456 348.8152,489.2988 Q347.7527,487.7363 347.7527,484.205 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="64.873" x="372.8152" y="490.0273">WebConfig</text><line style="stroke:#181818;stroke-width:0.5;" x1="229.53" x2="548.4734" y1="500.7363" y2="500.7363"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="280.7109" x="234.53" y="519.4745">-loginCheckInterceptor: LoginCheckInterceptor</text><line style="stroke:#181818;stroke-width:0.5;" x1="229.53" x2="548.4734" y1="527.6308" y2="527.6308"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="308.9434" x="234.53" y="546.3691">+addInterceptors(InterceptorRegistry registry): void</text></g><!--class CourseController--><g class="entity" data-entity="CourseController" data-source-line="26" data-uid="ent0009" id="entity_CourseController"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="666.8691" x="3856.57" y="690.1063"/><ellipse cx="4134.7448" cy="706.1063" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4130.1823,705.575 Q4130.1823,702.1531 4131.2604,700.5438 Q4132.3542,698.9344 4134.5261,698.9344 Q4135.7136,698.9344 4136.9167,699.5594 L4136.9167,701.4188 Q4135.5729,700.7 4134.6042,700.7 Q4132.0729,700.7 4132.0729,705.575 Q4132.0729,708.2938 4132.7292,709.3875 Q4133.3854,710.4656 4134.6042,710.4656 Q4135.5886,710.4656 4136.9948,709.6063 L4136.9948,711.6219 Q4135.7917,712.2156 4134.5261,712.2156 Q4132.3073,712.2156 4131.2448,710.6688 Q4130.1823,709.1063 4130.1823,705.575 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="102.0195" x="4155.2448" y="711.3973">CourseController</text><line style="stroke:#181818;stroke-width:0.5;" x1="3857.57" x2="4522.4391" y1="722.1063" y2="722.1063"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185.6367" x="3862.57" y="740.8445">-courseService: CourseService</text><line style="stroke:#181818;stroke-width:0.5;" x1="3857.57" x2="4522.4391" y1="749.0008" y2="749.0008"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="654.8691" x="3862.57" y="767.7391">+getCourse(String keyword, Integer type, Integer grade, Float credit, Integer page, Integer pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218.3535" x="3862.57" y="786.6336">+editCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218.0801" x="3862.57" y="805.5281">+addCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="202.4121" x="3862.57" y="824.4227">+deleteCourse(Integer id): Result</text></g><!--class Hello--><g class="entity" data-entity="Hello" data-source-line="35" data-uid="ent0011" id="entity_Hello"><rect fill="#F1F1F1" height="66.8945" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="102.0293" x="3719.99" y="727.8863"/><ellipse cx="3752.5435" cy="743.8863" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3747.981,743.355 Q3747.981,739.9331 3749.0591,738.3238 Q3750.1529,736.7144 3752.3248,736.7144 Q3753.5123,736.7144 3754.7154,737.3394 L3754.7154,739.1988 Q3753.3716,738.48 3752.4029,738.48 Q3749.8716,738.48 3749.8716,743.355 Q3749.8716,746.0738 3750.5279,747.1675 Q3751.1841,748.2456 3752.4029,748.2456 Q3753.3873,748.2456 3754.7935,747.3863 L3754.7935,749.4019 Q3753.5904,749.9956 3752.3248,749.9956 Q3750.106,749.9956 3749.0435,748.4488 Q3747.981,746.8863 3747.981,743.355 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="31.0215" x="3770.4443" y="749.1773">Hello</text><line style="stroke:#181818;stroke-width:0.5;" x1="3720.99" x2="3821.0193" y1="759.8863" y2="759.8863"/><line style="stroke:#181818;stroke-width:0.5;" x1="3720.99" x2="3821.0193" y1="767.8863" y2="767.8863"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="90.0293" x="3725.99" y="786.6245">+hello(): String</text></g><!--class LoginController--><g class="entity" data-entity="LoginController" data-source-line="39" data-uid="ent0012" id="entity_LoginController"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="447.3398" x="3237.33" y="708.9963"/><ellipse cx="3411.0448" cy="724.9963" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3406.4823,724.465 Q3406.4823,721.0431 3407.5605,719.4338 Q3408.6542,717.8244 3410.8261,717.8244 Q3412.0136,717.8244 3413.2167,718.4494 L3413.2167,720.3088 Q3411.873,719.59 3410.9042,719.59 Q3408.373,719.59 3408.373,724.465 Q3408.373,727.1838 3409.0292,728.2775 Q3409.6855,729.3556 3410.9042,729.3556 Q3411.8886,729.3556 3413.2948,728.4963 L3413.2948,730.5119 Q3412.0917,731.1056 3410.8261,731.1056 Q3408.6073,731.1056 3407.5448,729.5588 Q3406.4823,727.9963 3406.4823,724.465 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="91.4102" x="3431.5448" y="730.2873">LoginController</text><line style="stroke:#181818;stroke-width:0.5;" x1="3238.33" x2="3683.6698" y1="740.9963" y2="740.9963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="156.5703" x="3243.33" y="759.7345">-userService: UserService</text><line style="stroke:#181818;stroke-width:0.5;" x1="3238.33" x2="3683.6698" y1="767.8908" y2="767.8908"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="435.3398" x="3243.33" y="786.6291">+login(String username, String password, HttpSession session): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="228.4297" x="3243.33" y="805.5236">+logout(HttpSession session): Result</text></g><!--class ScoreController--><g class="entity" data-entity="ScoreController" data-source-line="46" data-uid="ent0013" id="entity_ScoreController"><rect fill="#F1F1F1" height="161.3672" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="404.5332" x="5403.73" y="680.6563"/><ellipse cx="5554.7905" cy="696.6563" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M5550.228,696.125 Q5550.228,692.7031 5551.3062,691.0938 Q5552.3999,689.4844 5554.5718,689.4844 Q5555.7593,689.4844 5556.9624,690.1094 L5556.9624,691.9688 Q5555.6187,691.25 5554.6499,691.25 Q5552.1187,691.25 5552.1187,696.125 Q5552.1187,698.8438 5552.7749,699.9375 Q5553.4312,701.0156 5554.6499,701.0156 Q5555.6343,701.0156 5557.0405,700.1563 L5557.0405,702.1719 Q5555.8374,702.7656 5554.5718,702.7656 Q5552.353,702.7656 5551.2905,701.2188 Q5550.228,699.6563 5550.228,696.125 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="93.9121" x="5575.2905" y="701.9473">ScoreController</text><line style="stroke:#181818;stroke-width:0.5;" x1="5404.73" x2="5807.2632" y1="712.6563" y2="712.6563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="174.1797" x="5409.73" y="731.3945">~scoreService: ScoreService</text><line style="stroke:#181818;stroke-width:0.5;" x1="5404.73" x2="5807.2632" y1="739.5508" y2="739.5508"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="275.3926" x="5409.73" y="758.2891">+getScore(int studentId, int courseId): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="213.8828" x="5409.73" y="777.1836">+updateScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="392.5332" x="5409.73" y="796.0781">+addScore(Student student, Course course, Float score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="209.6855" x="5409.73" y="814.9727">+deleteScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="270.6484" x="5409.73" y="833.8672">+getScoreByStu(String studentCode): Result</text></g><!--class studentController--><g class="entity" data-entity="studentController" data-source-line="56" data-uid="ent0014" id="entity_studentController"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="387.7988" x="4981.1" y="690.1063"/><ellipse cx="5118.0648" cy="706.1063" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M5113.5023,705.575 Q5113.5023,702.1531 5114.5805,700.5438 Q5115.6742,698.9344 5117.8461,698.9344 Q5119.0336,698.9344 5120.2367,699.5594 L5120.2367,701.4188 Q5118.893,700.7 5117.9242,700.7 Q5115.393,700.7 5115.393,705.575 Q5115.393,708.2938 5116.0492,709.3875 Q5116.7055,710.4656 5117.9242,710.4656 Q5118.9086,710.4656 5120.3148,709.6063 L5120.3148,711.6219 Q5119.1117,712.2156 5117.8461,712.2156 Q5115.6273,712.2156 5114.5648,710.6688 Q5113.5023,709.1063 5113.5023,705.575 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="105.3691" x="5138.5648" y="711.3973">studentController</text><line style="stroke:#181818;stroke-width:0.5;" x1="4982.1" x2="5367.8988" y1="722.1063" y2="722.1063"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="195.6855" x="4987.1" y="740.8445">-studentService: StudentService</text><line style="stroke:#181818;stroke-width:0.5;" x1="4982.1" x2="5367.8988" y1="749.0008" y2="749.0008"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="375.7988" x="4987.1" y="767.7391">+get(Student student, Integer page, Integer pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185.0762" x="4987.1" y="786.6336">+add(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185.3496" x="4987.1" y="805.5281">+edit(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="200.4434" x="4987.1" y="824.4227">+delete(Student student): Result</text></g><!--class TeacherController--><g class="entity" data-entity="TeacherController" data-source-line="65" data-uid="ent0015" id="entity_TeacherController"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="387.8125" x="4558.09" y="690.1063"/><ellipse cx="4694.0773" cy="706.1063" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4689.5148,705.575 Q4689.5148,702.1531 4690.5929,700.5438 Q4691.6867,698.9344 4693.8586,698.9344 Q4695.0461,698.9344 4696.2492,699.5594 L4696.2492,701.4188 Q4694.9054,700.7 4693.9367,700.7 Q4691.4054,700.7 4691.4054,705.575 Q4691.4054,708.2938 4692.0617,709.3875 Q4692.7179,710.4656 4693.9367,710.4656 Q4694.9211,710.4656 4696.3273,709.6063 L4696.3273,711.6219 Q4695.1242,712.2156 4693.8586,712.2156 Q4691.6398,712.2156 4690.5773,710.6688 Q4689.5148,709.1063 4689.5148,705.575 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="107.3379" x="4714.5773" y="711.3973">TeacherController</text><line style="stroke:#181818;stroke-width:0.5;" x1="4559.09" x2="4944.9025" y1="722.1063" y2="722.1063"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="195.6992" x="4564.09" y="740.8445">-teacherService: TeacherService</text><line style="stroke:#181818;stroke-width:0.5;" x1="4559.09" x2="4944.9025" y1="749.0008" y2="749.0008"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="375.8125" x="4564.09" y="767.7391">+get(Teacher teacher, Integer page, Integer pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185.0898" x="4564.09" y="786.6336">+add(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="185.3633" x="4564.09" y="805.5281">+edit(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="200.457" x="4564.09" y="824.4227">+delete(Teacher teacher): Result</text></g><!--class GlobalExceptionHandler--><g class="entity" data-entity="GlobalExceptionHandler" data-source-line="74" data-uid="ent0016" id="entity_GlobalExceptionHandler"><rect fill="#F1F1F1" height="66.8945" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="176.5117" x="916.74" y="478.1863"/><ellipse cx="931.74" cy="494.1863" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M927.1775,493.655 Q927.1775,490.2331 928.2556,488.6238 Q929.3494,487.0144 931.5213,487.0144 Q932.7088,487.0144 933.9119,487.6394 L933.9119,489.4988 Q932.5681,488.78 931.5994,488.78 Q929.0681,488.78 929.0681,493.655 Q929.0681,496.3738 929.7244,497.4675 Q930.3806,498.5456 931.5994,498.5456 Q932.5838,498.5456 933.99,497.6863 L933.99,499.7019 Q932.7869,500.2956 931.5213,500.2956 Q929.3025,500.2956 928.24,498.7488 Q927.1775,497.1863 927.1775,493.655 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="144.5117" x="945.74" y="499.4773">GlobalExceptionHandler</text><line style="stroke:#181818;stroke-width:0.5;" x1="917.74" x2="1092.2517" y1="510.1863" y2="510.1863"/><line style="stroke:#181818;stroke-width:0.5;" x1="917.74" x2="1092.2517" y1="518.1863" y2="518.1863"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="148.1895" x="922.74" y="536.9245">+ex(Exception e): Result</text></g><!--class LoginCheckInterceptor--><g class="entity" data-entity="LoginCheckInterceptor" data-source-line="78" data-uid="ent0018" id="entity_LoginCheckInterceptor"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="784.7344" x="423.63" y="173.6862"/><ellipse cx="743.8048" cy="189.6862" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M739.2423,189.155 Q739.2423,185.7331 740.3204,184.1237 Q741.4142,182.5144 743.5861,182.5144 Q744.7736,182.5144 745.9767,183.1394 L745.9767,184.9987 Q744.6329,184.28 743.6642,184.28 Q741.1329,184.28 741.1329,189.155 Q741.1329,191.8737 741.7892,192.9675 Q742.4454,194.0456 743.6642,194.0456 Q744.6486,194.0456 746.0548,193.1862 L746.0548,195.2019 Q744.8517,195.7956 743.5861,195.7956 Q741.3673,195.7956 740.3048,194.2487 Q739.2423,192.6862 739.2423,189.155 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="135.8848" x="764.3048" y="194.9773">LoginCheckInterceptor</text><line style="stroke:#181818;stroke-width:0.5;" x1="424.63" x2="1207.3644" y1="205.6862" y2="205.6862"/><line style="stroke:#181818;stroke-width:0.5;" x1="424.63" x2="1207.3644" y1="213.6862" y2="213.6862"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="600.209" x="429.63" y="232.4245">+preHandle(HttpServletRequest request, HttpServletResponse response, Object handler): boolean</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="772.7344" x="429.63" y="251.3191">+postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="696.1172" x="429.63" y="270.2136">+afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex): void</text></g><!--class CourseMapper--><g class="entity" data-entity="CourseMapper" data-source-line="84" data-uid="ent0020" id="entity_CourseMapper"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="373.8125" x="3237.09" y="440.3963"/><ellipse cx="3375.1554" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3377.6554,462.5994 L3371.6867,462.5994 L3371.6867,460.865 L3373.6867,460.865 L3373.6867,451.3806 L3371.6867,451.3806 L3371.6867,449.6463 L3377.6554,449.6463 L3377.6554,451.3806 L3375.6554,451.3806 L3375.6554,460.865 L3377.6554,460.865 L3377.6554,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="89.1816" x="3395.6554" y="461.6873">CourseMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="3238.09" x2="3609.9025" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="3238.09" x2="3609.9025" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="361.8125" x="3243.09" y="499.1345">~selectCourse(Course course, int offset, int pageSize): List</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="206.6094" x="3243.09" y="518.0291">~insertCourse(Course course): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="214.1563" x="3243.09" y="536.9236">~updateCourse(Course course): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="209.959" x="3243.09" y="555.8181">~deleteCourse(Course course): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="244.6309" x="3243.09" y="574.7127">~selectCourseCount(Course course): int</text></g><!--class ScoreMapper--><g class="entity" data-entity="ScoreMapper" data-source-line="92" data-uid="ent0022" id="entity_ScoreMapper"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="232.8691" x="3645.57" y="440.3963"/><ellipse cx="3717.2175" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3719.7175,462.5994 L3713.7487,462.5994 L3713.7487,460.865 L3715.7487,460.865 L3715.7487,451.3806 L3713.7487,451.3806 L3713.7487,449.6463 L3719.7175,449.6463 L3719.7175,451.3806 L3717.7175,451.3806 L3717.7175,460.865 L3719.7175,460.865 L3719.7175,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="81.0742" x="3737.7175" y="461.6873">ScoreMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="3646.57" x2="3877.4391" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="3646.57" x2="3877.4391" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="191.8164" x="3651.57" y="499.1345">~selectScore(Score score): List</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="220.8691" x="3651.57" y="518.0291">~selectScoreCount(Score score): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="182.8477" x="3651.57" y="536.9236">~insertScore(Score score): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="186.1973" x="3651.57" y="555.8181">~deleteScore(Score score): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="190.3945" x="3651.57" y="574.7127">~updateScore(Score score): int</text></g><!--class StudentMapper--><g class="entity" data-entity="StudentMapper" data-source-line="100" data-uid="ent0023" id="entity_StudentMapper"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="388.6055" x="4337.7" y="440.3963"/><ellipse cx="4480.7898" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4483.2898,462.5994 L4477.3211,462.5994 L4477.3211,460.865 L4479.3211,460.865 L4479.3211,451.3806 L4477.3211,451.3806 L4477.3211,449.6463 L4483.2898,449.6463 L4483.2898,451.3806 L4481.2898,451.3806 L4481.2898,460.865 L4483.2898,460.865 L4483.2898,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="93.9258" x="4501.2898" y="461.6873">StudentMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="4338.7" x2="4725.3055" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="4338.7" x2="4725.3055" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="376.6055" x="4343.7" y="499.1345">~selectStudent(Student student, int offset, int pageSize): List</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="259.4238" x="4343.7" y="518.0291">~selectStudentCount(Student student): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="221.4023" x="4343.7" y="536.9236">~insertStudent(Student student): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="228.9492" x="4343.7" y="555.8181">~updateStudent(Student student): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="224.752" x="4343.7" y="574.7127">~deleteStudent(Student student): int</text></g><!--class TeacherMapper--><g class="entity" data-entity="TeacherMapper" data-source-line="108" data-uid="ent0024" id="entity_TeacherMapper"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="389.1934" x="3913.4" y="440.3963"/><ellipse cx="4056.4967" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4058.9967,462.5994 L4053.0279,462.5994 L4053.0279,460.865 L4055.0279,460.865 L4055.0279,451.3806 L4053.0279,451.3806 L4053.0279,449.6463 L4058.9967,449.6463 L4058.9967,451.3806 L4056.9967,451.3806 L4056.9967,460.865 L4058.9967,460.865 L4058.9967,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="94.5" x="4076.9967" y="461.6873">TeacherMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="3914.4" x2="4301.5934" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="3914.4" x2="4301.5934" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="377.1934" x="3919.4" y="499.1345">~selectTeacher(Teacher teacher, int offset, int pageSize): List</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="260.0117" x="3919.4" y="518.0291">~selectTeacherCount(Teacher teacher): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="221.9902" x="3919.4" y="536.9236">~insertTeacher(Teacher teacher): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="229.5371" x="3919.4" y="555.8181">~updateTeacher(Teacher teacher): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="225.3398" x="3919.4" y="574.7127">~deleteTeacher(Teacher teacher): int</text></g><!--class UserMapper--><g class="entity" data-entity="UserMapper" data-source-line="116" data-uid="ent0025" id="entity_UserMapper"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="329.9395" x="4761.03" y="440.3963"/><ellipse cx="4884.5622" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4887.0622,462.5994 L4881.0935,462.5994 L4881.0935,460.865 L4883.0935,460.865 L4883.0935,451.3806 L4881.0935,451.3806 L4881.0935,449.6463 L4887.0622,449.6463 L4887.0622,451.3806 L4885.0622,451.3806 L4885.0622,460.865 L4887.0622,460.865 L4887.0622,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="74.375" x="4905.0622" y="461.6873">UserMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="4762.03" x2="5089.9695" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="4762.03" x2="5089.9695" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="317.9395" x="4767.03" y="499.1345">~selectUser(User user, int offset, int pageSize): List</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="269.5684" x="4767.03" y="518.0291">~selectUserByName(String username): User</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="162.7363" x="4767.03" y="536.9236">~insertUser(User user): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="166.0859" x="4767.03" y="555.8181">~deleteUser(User user): int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="170.2832" x="4767.03" y="574.7127">~updateUser(User user): int</text></g><!--class Course--><g class="entity" data-entity="Course" data-source-line="124" data-uid="ent0026" id="entity_Course"><rect fill="#F1F1F1" height="199.1563" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="154.584" x="2722.71" y="126.4462"/><ellipse cx="2774.2256" cy="142.4462" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2769.6631,141.915 Q2769.6631,138.4931 2770.7413,136.8837 Q2771.835,135.2744 2774.0069,135.2744 Q2775.1944,135.2744 2776.3975,135.8994 L2776.3975,137.7587 Q2775.0538,137.04 2774.085,137.04 Q2771.5538,137.04 2771.5538,141.915 Q2771.5538,144.6337 2772.21,145.7275 Q2772.8663,146.8056 2774.085,146.8056 Q2775.0694,146.8056 2776.4756,145.9462 L2776.4756,147.9619 Q2775.2725,148.5556 2774.0069,148.5556 Q2771.7881,148.5556 2770.7256,147.0087 Q2769.6631,145.4462 2769.6631,141.915 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="43.0527" x="2794.7256" y="147.7373">Course</text><line style="stroke:#181818;stroke-width:0.5;" x1="2723.71" x2="2876.294" y1="158.4462" y2="158.4462"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65.707" x="2728.71" y="177.1845">-id: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82.209" x="2728.71" y="196.0791">-name: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="80.2539" x="2728.71" y="214.9736">-type: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="76.3164" x="2728.71" y="233.8681">-credit: Float</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.9219" x="2728.71" y="252.7627">-grade: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.9219" x="2728.71" y="271.6572">-major: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="81.9082" x="2728.71" y="290.5517">-detail: String</text><line style="stroke:#181818;stroke-width:0.5;" x1="2723.71" x2="2876.294" y1="298.708" y2="298.708"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="142.584" x="2728.71" y="317.4462">+isComplete(): boolean</text></g><!--class Result--><g class="entity" data-entity="Result" data-source-line="136" data-uid="ent0028" id="entity_Result"><rect fill="#F1F1F1" height="274.7344" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="331.8945" x="2356.05" y="88.6563"/><ellipse cx="2498.3195" cy="104.6563" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2493.757,104.125 Q2493.757,100.7031 2494.8352,99.0938 Q2495.9289,97.4844 2498.1008,97.4844 Q2499.2883,97.4844 2500.4914,98.1094 L2500.4914,99.9688 Q2499.1477,99.25 2498.1789,99.25 Q2495.6477,99.25 2495.6477,104.125 Q2495.6477,106.8438 2496.3039,107.9375 Q2496.9602,109.0156 2498.1789,109.0156 Q2499.1633,109.0156 2500.5695,108.1563 L2500.5695,110.1719 Q2499.3664,110.7656 2498.1008,110.7656 Q2495.882,110.7656 2494.8195,109.2188 Q2493.757,107.6563 2493.757,104.125 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="38.8555" x="2518.8195" y="109.9473">Result</text><line style="stroke:#181818;stroke-width:0.5;" x1="2357.05" x2="2686.9445" y1="120.6563" y2="120.6563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="111.5625" x="2362.05" y="139.3945">-success: boolean</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="61.7832" x="2362.05" y="158.2891">-count: int</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="73.8418" x="2362.05" y="177.1836">-msg: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="78.2852" x="2362.05" y="196.0781">-data: Object</text><line style="stroke:#181818;stroke-width:0.5;" x1="2357.05" x2="2686.9445" y1="204.2344" y2="204.2344"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="258.1113" x="2362.05" y="222.9727">+success(Object data, String msg): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="246.0527" x="2362.05" y="241.8672">+success(Object data, int count): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="319.8945" x="2362.05" y="260.7617">+success(Object data, String msg, int count): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="184.2695" x="2362.05" y="279.6563">+success(Object data): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="114.3789" x="2362.05" y="298.5508">+success(): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="229.5645" x="2362.05" y="317.4453">+success(boolean isSuccess): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="157.9922" x="2362.05" y="336.3398">+error(String msg): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="236.2773" x="2362.05" y="355.2344">+error(String msg, Object data): Result</text></g><!--class Score--><g class="entity" data-entity="Score" data-source-line="152" data-uid="ent0029" id="entity_Score"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="124.3965" x="2911.8" y="173.6862"/><ellipse cx="2952.653" cy="189.6862" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2948.0905,189.155 Q2948.0905,185.7331 2949.1687,184.1237 Q2950.2624,182.5144 2952.4343,182.5144 Q2953.6218,182.5144 2954.8249,183.1394 L2954.8249,184.9987 Q2953.4812,184.28 2952.5124,184.28 Q2949.9812,184.28 2949.9812,189.155 Q2949.9812,191.8737 2950.6374,192.9675 Q2951.2937,194.0456 2952.5124,194.0456 Q2953.4968,194.0456 2954.903,193.1862 L2954.903,195.2019 Q2953.6999,195.7956 2952.4343,195.7956 Q2950.2155,195.7956 2949.153,194.2487 Q2948.0905,192.6862 2948.0905,189.155 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="34.9453" x="2972.3981" y="194.9773">Score</text><line style="stroke:#181818;stroke-width:0.5;" x1="2912.8" x2="3035.1965" y1="205.6862" y2="205.6862"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="112.3965" x="2917.8" y="224.4245">-studentId: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="107.0918" x="2917.8" y="243.3191">-courseId: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75.7695" x="2917.8" y="262.2136">-score: Float</text><line style="stroke:#181818;stroke-width:0.5;" x1="2912.8" x2="3035.1965" y1="270.3698" y2="270.3698"/></g><!--class Student--><g class="entity" data-entity="Student" data-source-line="158" data-uid="ent0030" id="entity_Student"><rect fill="#F1F1F1" height="180.2617" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="100.9219" x="3206.54" y="135.8963"/><ellipse cx="3231.0463" cy="151.8963" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3226.4838,151.365 Q3226.4838,147.9431 3227.5619,146.3338 Q3228.6556,144.7244 3230.8275,144.7244 Q3232.015,144.7244 3233.2181,145.3494 L3233.2181,147.2088 Q3231.8744,146.49 3230.9056,146.49 Q3228.3744,146.49 3228.3744,151.365 Q3228.3744,154.0838 3229.0306,155.1775 Q3229.6869,156.2556 3230.9056,156.2556 Q3231.89,156.2556 3233.2963,155.3963 L3233.2963,157.4119 Q3232.0931,158.0056 3230.8275,158.0056 Q3228.6088,158.0056 3227.5463,156.4588 Q3226.4838,154.8963 3226.4838,151.365 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="47.7969" x="3247.1588" y="157.1873">Student</text><line style="stroke:#181818;stroke-width:0.5;" x1="3207.54" x2="3306.4619" y1="167.8963" y2="167.8963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65.707" x="3212.54" y="186.6345">-id: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="77.4512" x="3212.54" y="205.5291">-code: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82.209" x="3212.54" y="224.4236">-name: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="75.7832" x="3212.54" y="243.3181">-sex: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.9219" x="3212.54" y="262.2127">-grade: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.9219" x="3212.54" y="281.1072">-major: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="81.9082" x="3212.54" y="300.0017">-detail: String</text><line style="stroke:#181818;stroke-width:0.5;" x1="3207.54" x2="3306.4619" y1="308.158" y2="308.158"/></g><!--class Teacher--><g class="entity" data-entity="Teacher" data-source-line="168" data-uid="ent0031" id="entity_Teacher"><rect fill="#F1F1F1" height="161.3672" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="100.3613" x="3070.82" y="145.3462"/><ellipse cx="3094.8156" cy="161.3462" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3090.2531,160.815 Q3090.2531,157.3931 3091.3312,155.7837 Q3092.425,154.1744 3094.5969,154.1744 Q3095.7844,154.1744 3096.9875,154.7994 L3096.9875,156.6587 Q3095.6437,155.94 3094.675,155.94 Q3092.1437,155.94 3092.1437,160.815 Q3092.1437,163.5337 3092.8,164.6275 Q3093.4562,165.7056 3094.675,165.7056 Q3095.6594,165.7056 3097.0656,164.8462 L3097.0656,166.8619 Q3095.8625,167.4556 3094.5969,167.4556 Q3092.3781,167.4556 3091.3156,165.9087 Q3090.2531,164.3462 3090.2531,160.815 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="48.3711" x="3110.8146" y="166.6373">Teacher</text><line style="stroke:#181818;stroke-width:0.5;" x1="3071.82" x2="3170.1813" y1="177.3462" y2="177.3462"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="69.9043" x="3076.82" y="196.0845">~id: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="86.4063" x="3076.82" y="214.9791">~name: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="79.9805" x="3076.82" y="233.8736">~sex: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="79.6797" x="3076.82" y="252.7681">~birth: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="88.3613" x="3076.82" y="271.6627">~educ: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82.1953" x="3076.82" y="290.5572">~title: Integer</text><line style="stroke:#181818;stroke-width:0.5;" x1="3071.82" x2="3170.1813" y1="298.7134" y2="298.7134"/></g><!--class User--><g class="entity" data-entity="User" data-source-line="177" data-uid="ent0032" id="entity_User"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="118.5313" x="3342.73" y="173.6862"/><ellipse cx="3383.9583" cy="189.6862" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M3379.3958,189.155 Q3379.3958,185.7331 3380.4739,184.1237 Q3381.5677,182.5144 3383.7396,182.5144 Q3384.9271,182.5144 3386.1302,183.1394 L3386.1302,184.9987 Q3384.7864,184.28 3383.8177,184.28 Q3381.2864,184.28 3381.2864,189.155 Q3381.2864,191.8737 3381.9427,192.9675 Q3382.5989,194.0456 3383.8177,194.0456 Q3384.8021,194.0456 3386.2083,193.1862 L3386.2083,195.2019 Q3385.0052,195.7956 3383.7396,195.7956 Q3381.5208,195.7956 3380.4583,194.2487 Q3379.3958,192.6862 3379.3958,189.155 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="28.2461" x="3403.7868" y="194.9773">User</text><line style="stroke:#181818;stroke-width:0.5;" x1="3343.73" x2="3460.2613" y1="205.6862" y2="205.6862"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="65.707" x="3348.73" y="224.4245">-id: Integer</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="82.209" x="3348.73" y="243.3191">-name: String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="106.5313" x="3348.73" y="262.2136">-password: String</text><line style="stroke:#181818;stroke-width:0.5;" x1="3343.73" x2="3460.2613" y1="270.3698" y2="270.3698"/></g><!--class CourseService--><g class="entity" data-entity="CourseService" data-source-line="183" data-uid="ent0033" id="entity_CourseService"><rect fill="#F1F1F1" height="123.5781" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="367.0996" x="1340.45" y="449.8363"/><ellipse cx="1475.9998" cy="465.8363" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M1478.4998,472.0394 L1472.5311,472.0394 L1472.5311,470.305 L1474.5311,470.305 L1474.5311,460.8206 L1472.5311,460.8206 L1472.5311,459.0863 L1478.4998,459.0863 L1478.4998,460.8206 L1476.4998,460.8206 L1476.4998,470.305 L1478.4998,470.305 L1478.4998,472.0394 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="87.5" x="1496.4998" y="471.1273">CourseService</text><line style="stroke:#181818;stroke-width:0.5;" x1="1341.45" x2="1706.5496" y1="481.8363" y2="481.8363"/><line style="stroke:#181818;stroke-width:0.5;" x1="1341.45" x2="1706.5496" y1="489.8363" y2="489.8363"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218.0801" x="1346.45" y="508.5745">~addCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="233.4473" x="1346.45" y="527.4691">~deleteCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="237.6445" x="1346.45" y="546.3636">~updateCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="355.0996" x="1346.45" y="565.2581">~getCourse(Course course, int page, int pageSize): Result</text></g><!--class ScoreService--><g class="entity" data-entity="ScoreService" data-source-line="190" data-uid="ent0035" id="entity_ScoreService"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="404.5332" x="2160.73" y="440.3963"/><ellipse cx="2319.0503" cy="456.3963" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2321.5503,462.5994 L2315.5816,462.5994 L2315.5816,460.865 L2317.5816,460.865 L2317.5816,451.3806 L2315.5816,451.3806 L2315.5816,449.6463 L2321.5503,449.6463 L2321.5503,451.3806 L2319.5503,451.3806 L2319.5503,460.865 L2321.5503,460.865 L2321.5503,462.5994 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="79.3926" x="2339.5503" y="461.6873">ScoreService</text><line style="stroke:#181818;stroke-width:0.5;" x1="2161.73" x2="2564.2632" y1="472.3963" y2="472.3963"/><line style="stroke:#181818;stroke-width:0.5;" x1="2161.73" x2="2564.2632" y1="480.3963" y2="480.3963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="392.5332" x="2166.73" y="499.1345">~addScore(Student student, Course course, Float score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="313.1406" x="2166.73" y="518.0291">~getScore(Student student, Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="209.6855" x="2166.73" y="536.9236">~deleteScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="213.8828" x="2166.73" y="555.8181">~updateScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="264.1953" x="2166.73" y="574.7127">~getStudentScore(Student student): Result</text></g><!--class StudentService--><g class="entity" data-entity="StudentService" data-source-line="198" data-uid="ent0036" id="entity_StudentService"><rect fill="#F1F1F1" height="123.5781" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="381.8926" x="2799.05" y="449.8363"/><ellipse cx="2939.6242" cy="465.8363" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2942.1242,472.0394 L2936.1555,472.0394 L2936.1555,470.305 L2938.1555,470.305 L2938.1555,460.8206 L2936.1555,460.8206 L2936.1555,459.0863 L2942.1242,459.0863 L2942.1242,460.8206 L2940.1242,460.8206 L2940.1242,470.305 L2942.1242,470.305 L2942.1242,472.0394 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="92.2441" x="2960.1242" y="471.1273">StudentService</text><line style="stroke:#181818;stroke-width:0.5;" x1="2800.05" x2="3179.9426" y1="481.8363" y2="481.8363"/><line style="stroke:#181818;stroke-width:0.5;" x1="2800.05" x2="3179.9426" y1="489.8363" y2="489.8363"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="369.8926" x="2805.05" y="508.5745">~getStudent(Student student, int page, int pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="232.873" x="2805.05" y="527.4691">~addStudent(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="252.4375" x="2805.05" y="546.3636">~updateStudent(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="248.2402" x="2805.05" y="565.2581">~deleteStudent(Student student): Result</text></g><!--class UserService--><g class="entity" data-entity="UserService" data-source-line="205" data-uid="ent0037" id="entity_UserService"><rect fill="#F1F1F1" height="66.8945" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="164.1133" x="2599.94" y="478.1863"/><ellipse cx="2641.679" cy="494.1863" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2644.179,500.3894 L2638.2102,500.3894 L2638.2102,498.655 L2640.2102,498.655 L2640.2102,489.1706 L2638.2102,489.1706 L2638.2102,487.4363 L2644.179,487.4363 L2644.179,489.1706 L2642.179,489.1706 L2642.179,498.655 L2644.179,498.655 L2644.179,500.3894 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="72.6934" x="2661.621" y="499.4773">UserService</text><line style="stroke:#181818;stroke-width:0.5;" x1="2600.94" x2="2763.0533" y1="510.1863" y2="510.1863"/><line style="stroke:#181818;stroke-width:0.5;" x1="2600.94" x2="2763.0533" y1="518.1863" y2="518.1863"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="152.1133" x="2605.94" y="536.9245">~login(User user): Result</text></g><!--class TeacherService--><g class="entity" data-entity="TeacherService" data-source-line="209" data-uid="ent0038" id="entity_TeacherService"><rect fill="#F1F1F1" height="123.5781" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="382.4805" x="1742.76" y="449.8363"/><ellipse cx="1883.3411" cy="465.8363" fill="#B1B1B1" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M1885.8411,472.0394 L1879.8723,472.0394 L1879.8723,470.305 L1881.8723,470.305 L1881.8723,460.8206 L1879.8723,460.8206 L1879.8723,459.0863 L1885.8411,459.0863 L1885.8411,460.8206 L1883.8411,460.8206 L1883.8411,470.305 L1885.8411,470.305 L1885.8411,472.0394 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" font-style="italic" lengthAdjust="spacing" textLength="92.8184" x="1903.8411" y="471.1273">TeacherService</text><line style="stroke:#181818;stroke-width:0.5;" x1="1743.76" x2="2124.2405" y1="481.8363" y2="481.8363"/><line style="stroke:#181818;stroke-width:0.5;" x1="1743.76" x2="2124.2405" y1="489.8363" y2="489.8363"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="370.4805" x="1748.76" y="508.5745">~getTeacher(Teacher teacher, int page, int pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="233.4609" x="1748.76" y="527.4691">~addTeacher(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="253.0254" x="1748.76" y="546.3636">~updateTeacher(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="248.8281" x="1748.76" y="565.2581">~deleteTeacher(Teacher teacher): Result</text></g><!--class CourseServiceImpl--><g class="entity" data-entity="CourseServiceImpl" data-source-line="216" data-uid="ent0039" id="entity_CourseServiceImpl"><rect fill="#F1F1F1" height="161.3672" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="367.0996" x="1173.45" y="680.6563"/><ellipse cx="1295.9979" cy="696.6563" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M1291.4354,696.125 Q1291.4354,692.7031 1292.5135,691.0938 Q1293.6072,689.4844 1295.7791,689.4844 Q1296.9666,689.4844 1298.1697,690.1094 L1298.1697,691.9688 Q1296.826,691.25 1295.8572,691.25 Q1293.326,691.25 1293.326,696.125 Q1293.326,698.8438 1293.9822,699.9375 Q1294.6385,701.0156 1295.8572,701.0156 Q1296.8416,701.0156 1298.2479,700.1563 L1298.2479,702.1719 Q1297.0447,702.7656 1295.7791,702.7656 Q1293.5604,702.7656 1292.4979,701.2188 Q1291.4354,699.6563 1291.4354,696.125 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="113.5039" x="1316.4979" y="701.9473">CourseServiceImpl</text><line style="stroke:#181818;stroke-width:0.5;" x1="1174.45" x2="1539.5496" y1="712.6563" y2="712.6563"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="189" x="1179.45" y="731.3945">-courseMapper: CourseMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="1174.45" x2="1539.5496" y1="739.5508" y2="739.5508"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="223.4121" x="1179.45" y="758.2891">-courseCheck(Course course): String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="218.0801" x="1179.45" y="777.1836">+addCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="233.4473" x="1179.45" y="796.0781">+deleteCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="237.6445" x="1179.45" y="814.9727">+updateCourse(Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="355.0996" x="1179.45" y="833.8672">+getCourse(Course course, int page, int pageSize): Result</text></g><!--class ScoreServiceImpl--><g class="entity" data-entity="ScoreServiceImpl" data-source-line="226" data-uid="ent0041" id="entity_ScoreServiceImpl"><rect fill="#F1F1F1" height="199.1563" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="404.5332" x="1993.73" y="661.7562"/><ellipse cx="2139.0484" cy="677.7562" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2134.4859,677.225 Q2134.4859,673.8031 2135.564,672.1937 Q2136.6577,670.5844 2138.8296,670.5844 Q2140.0171,670.5844 2141.2202,671.2094 L2141.2202,673.0687 Q2139.8765,672.35 2138.9077,672.35 Q2136.3765,672.35 2136.3765,677.225 Q2136.3765,679.9437 2137.0327,681.0375 Q2137.689,682.1156 2138.9077,682.1156 Q2139.8921,682.1156 2141.2984,681.2562 L2141.2984,683.2719 Q2140.0952,683.8656 2138.8296,683.8656 Q2136.6109,683.8656 2135.5484,682.3187 Q2134.4859,680.7562 2134.4859,677.225 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="105.3965" x="2159.5484" y="683.0473">ScoreServiceImpl</text><line style="stroke:#181818;stroke-width:0.5;" x1="1994.73" x2="2397.2632" y1="693.7562" y2="693.7562"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="177.543" x="1999.73" y="712.4945">~scoreMapper: ScoreMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="203.2461" x="1999.73" y="731.3891">~studentMapper: StudentMapper</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="193.1973" x="1999.73" y="750.2836">~courseMapper: CourseMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="1994.73" x2="2397.2632" y1="758.4398" y2="758.4398"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="392.5332" x="1999.73" y="777.1781">+addScore(Student student, Course course, Float score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="313.1406" x="1999.73" y="796.0727">+getScore(Student student, Course course): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="209.6855" x="1999.73" y="814.9672">+deleteScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="213.8828" x="1999.73" y="833.8617">+updateScore(Score score): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="264.1953" x="1999.73" y="852.7562">+getStudentScore(Student student): Result</text></g><!--class StudentServiceImpl--><g class="entity" data-entity="StudentServiceImpl" data-source-line="238" data-uid="ent0042" id="entity_StudentServiceImpl"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="381.8926" x="2775.05" y="690.1063"/><ellipse cx="2902.6223" cy="706.1063" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2898.0598,705.575 Q2898.0598,702.1531 2899.1379,700.5438 Q2900.2316,698.9344 2902.4035,698.9344 Q2903.591,698.9344 2904.7941,699.5594 L2904.7941,701.4188 Q2903.4504,700.7 2902.4816,700.7 Q2899.9504,700.7 2899.9504,705.575 Q2899.9504,708.2938 2900.6066,709.3875 Q2901.2629,710.4656 2902.4816,710.4656 Q2903.466,710.4656 2904.8723,709.6063 L2904.8723,711.6219 Q2903.6691,712.2156 2902.4035,712.2156 Q2900.1848,712.2156 2899.1223,710.6688 Q2898.0598,709.1063 2898.0598,705.575 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="118.248" x="2923.1223" y="711.3973">StudentServiceImpl</text><line style="stroke:#181818;stroke-width:0.5;" x1="2776.05" x2="3155.9426" y1="722.1063" y2="722.1063"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="199.0488" x="2781.05" y="740.8445">-studentMapper: StudentMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="2776.05" x2="3155.9426" y1="749.0008" y2="749.0008"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="369.8926" x="2781.05" y="767.7391">+getStudent(Student student, int page, int pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="232.873" x="2781.05" y="786.6336">+addStudent(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="252.4375" x="2781.05" y="805.5281">+updateStudent(Student student): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="248.2402" x="2781.05" y="824.4227">+deleteStudent(Student student): Result</text></g><!--class UserServiceImpl--><g class="entity" data-entity="UserServiceImpl" data-source-line="247" data-uid="ent0043" id="entity_UserServiceImpl"><rect fill="#F1F1F1" height="104.6836" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="306.9844" x="2433.51" y="708.9963"/><ellipse cx="2533.4036" cy="724.9963" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M2528.8411,724.465 Q2528.8411,721.0431 2529.9192,719.4338 Q2531.0129,717.8244 2533.1848,717.8244 Q2534.3723,717.8244 2535.5754,718.4494 L2535.5754,720.3088 Q2534.2317,719.59 2533.2629,719.59 Q2530.7317,719.59 2530.7317,724.465 Q2530.7317,727.1838 2531.3879,728.2775 Q2532.0442,729.3556 2533.2629,729.3556 Q2534.2473,729.3556 2535.6536,728.4963 L2535.6536,730.5119 Q2534.4504,731.1056 2533.1848,731.1056 Q2530.9661,731.1056 2529.9036,729.5588 Q2528.8411,727.9963 2528.8411,724.465 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.6973" x="2553.9036" y="730.2873">UserServiceImpl</text><line style="stroke:#181818;stroke-width:0.5;" x1="2434.51" x2="2739.4944" y1="740.9963" y2="740.9963"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="159.9336" x="2439.51" y="759.7345">-userMapper: UserMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="2434.51" x2="2739.4944" y1="767.8908" y2="767.8908"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="294.9844" x="2439.51" y="786.6291">+setUserMapper(UserMapper userMapper): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="152.1133" x="2439.51" y="805.5236">+login(User user): Result</text></g><!--class TeacherServiceImpl--><g class="entity" data-entity="TeacherServiceImpl" data-source-line="254" data-uid="ent0044" id="entity_TeacherServiceImpl"><rect fill="#F1F1F1" height="142.4727" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="382.4805" x="1575.76" y="690.1063"/><ellipse cx="1703.3391" cy="706.1063" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M1698.7766,705.575 Q1698.7766,702.1531 1699.8547,700.5438 Q1700.9485,698.9344 1703.1204,698.9344 Q1704.3079,698.9344 1705.511,699.5594 L1705.511,701.4188 Q1704.1672,700.7 1703.1985,700.7 Q1700.6672,700.7 1700.6672,705.575 Q1700.6672,708.2938 1701.3235,709.3875 Q1701.9797,710.4656 1703.1985,710.4656 Q1704.1829,710.4656 1705.5891,709.6063 L1705.5891,711.6219 Q1704.386,712.2156 1703.1204,712.2156 Q1700.9016,712.2156 1699.8391,710.6688 Q1698.7766,709.1063 1698.7766,705.575 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="118.8223" x="1723.8391" y="711.3973">TeacherServiceImpl</text><line style="stroke:#181818;stroke-width:0.5;" x1="1576.76" x2="1957.2405" y1="722.1063" y2="722.1063"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="199.0625" x="1581.76" y="740.8445">-teacherMapper: TeacherMapper</text><line style="stroke:#181818;stroke-width:0.5;" x1="1576.76" x2="1957.2405" y1="749.0008" y2="749.0008"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="370.4805" x="1581.76" y="767.7391">+getTeacher(Teacher teacher, int page, int pageSize): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="233.4609" x="1581.76" y="786.6336">+addTeacher(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="253.0254" x="1581.76" y="805.5281">+updateTeacher(Teacher teacher): Result</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="248.8281" x="1581.76" y="824.4227">+deleteTeacher(Teacher teacher): Result</text></g><!--class JwtUtils--><g class="entity" data-entity="JwtUtils" data-source-line="263" data-uid="ent0045" id="entity_JwtUtils"><rect fill="#F1F1F1" height="161.3672" rx="3" ry="3" style="stroke:#181818;stroke-width:0.5;" width="446.2188" x="4409.89" y="145.3462"/><ellipse cx="4605.4046" cy="161.3462" fill="#C2C2C2" rx="11" ry="11" style="stroke:#181818;stroke-width:1;"/><path d="M4600.8421,160.815 Q4600.8421,157.3931 4601.9203,155.7837 Q4603.014,154.1744 4605.1859,154.1744 Q4606.3734,154.1744 4607.5765,154.7994 L4607.5765,156.6587 Q4606.2328,155.94 4605.264,155.94 Q4602.7328,155.94 4602.7328,160.815 Q4602.7328,163.5337 4603.389,164.6275 Q4604.0453,165.7056 4605.264,165.7056 Q4606.2484,165.7056 4607.6546,164.8462 L4607.6546,166.8619 Q4606.4515,167.4556 4605.1859,167.4556 Q4602.9671,167.4556 4601.9046,165.9087 Q4600.8421,164.3462 4600.8421,160.815 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="46.6895" x="4625.9046" y="166.6373">JwtUtils</text><line style="stroke:#181818;stroke-width:0.5;" x1="4410.89" x2="4855.1088" y1="177.3462" y2="177.3462"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="98.4375" x="4415.89" y="196.0845">-KEY: SecretKey</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="93.9395" x="4415.89" y="214.9791">-expireTime: int</text><line style="stroke:#181818;stroke-width:0.5;" x1="4410.89" x2="4855.1088" y1="223.1353" y2="223.1353"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="156.3242" x="4415.89" y="241.8736">+getJwt(Map map): String</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="434.2188" x="4415.89" y="260.7681">+setExpireTime(int ms, int seconds, int minutes, int hour, int day): void</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="139.2617" x="4415.89" y="279.6627">+getExpireTime(): Date</text><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacing" textLength="161.9023" x="4415.89" y="298.5572">+parseJwt(String jwt): Map</text></g><!--reverse link CourseService to CourseServiceImpl--><g class="link" data-entity-1="CourseService" data-entity-2="CourseServiceImpl" data-source-line="287" data-uid="lnk48" id="link_CourseService_CourseServiceImpl"><path codeLine="287" d="M1472.6583,588.7815 C1451.0183,620.8815 1434.32,645.6563 1411.05,680.1663" fill="none" id="CourseService-backto-CourseServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="1482.72,573.8563,1467.6832,585.4275,1477.6333,592.1354,1482.72,573.8563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link ScoreService to ScoreServiceImpl--><g class="link" data-entity-1="ScoreService" data-entity-2="ScoreServiceImpl" data-source-line="288" data-uid="lnk49" id="link_ScoreService_ScoreServiceImpl"><path codeLine="288" d="M2305.3076,598.201 C2288.9176,622.511 2280.31,635.2763 2262.69,661.4163" fill="none" id="ScoreService-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="2315.37,583.2763,2300.3327,594.8469,2310.2825,601.5551,2315.37,583.2763" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link StudentService to StudentServiceImpl--><g class="link" data-entity-1="StudentService" data-entity-2="StudentServiceImpl" data-source-line="289" data-uid="lnk50" id="link_StudentService_StudentServiceImpl"><path codeLine="289" d="M2982.335,591.7724 C2978.935,626.8824 2976.38,653.1663 2972.84,689.7262" fill="none" id="StudentService-backto-StudentServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="2984.07,573.8563,2976.363,591.1941,2988.3071,592.3508,2984.07,573.8563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link UserService to UserServiceImpl--><g class="link" data-entity-1="UserService" data-entity-2="UserServiceImpl" data-source-line="290" data-uid="lnk51" id="link_UserService_UserServiceImpl"><path codeLine="290" d="M2662.9346,562.3327 C2646.9346,604.0527 2625.62,659.6463 2606.79,708.7463" fill="none" id="UserService-backto-UserServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="2669.38,545.5263,2657.3324,560.1842,2668.5367,564.4812,2669.38,545.5263" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link TeacherService to TeacherServiceImpl--><g class="link" data-entity-1="TeacherService" data-entity-2="TeacherServiceImpl" data-source-line="291" data-uid="lnk52" id="link_TeacherService_TeacherServiceImpl"><path codeLine="291" d="M1882.658,588.7813 C1858.988,623.8913 1839.25,653.1663 1814.6,689.7262" fill="none" id="TeacherService-backto-TeacherServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="none" points="1892.72,573.8563,1877.683,585.4273,1887.633,592.1353,1892.72,573.8563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link LoginCheckInterceptor to WebConfig--><g class="link" data-entity-1="LoginCheckInterceptor" data-entity-2="WebConfig" data-source-line="292" data-uid="lnk53" id="link_LoginCheckInterceptor_WebConfig"><path codeLine="292" d="M733.1819,282.0357 C651.2719,336.4357 528.87,417.7262 452.72,468.3063" fill="none" id="LoginCheckInterceptor-backto-WebConfig" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="738.18,278.7162,728.4699,280.3634,734.0149,281.4825,732.8958,287.0275,738.18,278.7162" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to CourseController--><g class="link" data-entity-1="Result" data-entity-2="CourseController" data-source-line="293" data-uid="lnk54" id="link_Result_CourseController"><path codeLine="293" d="M2663.7476,366.9844 C2678.5376,376.4244 2689,381.3462 2705,387.3963 C2720.74,393.3462 5116.12,383.4762 5128,395.3963 C5194.35,461.9663 5193.9,539.8463 5128,606.8663 C5116.57,618.4962 4556.97,613.4762 4541,616.7562 C4468.45,631.6663 4391.88,661.1963 4328.83,689.6163" fill="none" id="Result-backto-CourseController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2658.69,363.7563,2664.1243,371.9701,2662.9047,366.4463,2668.4285,365.2267,2658.69,363.7563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link CourseService to CourseController--><g class="link" data-entity-1="CourseService" data-entity-2="CourseController" data-source-line="294" data-uid="lnk55" id="link_CourseService_CourseController"><path codeLine="294" d="M1637.7411,576.3449 C1666.9411,589.9149 1693.7,599.8163 1725,606.8663 C1839.63,632.6863 3724.77,593.7663 3840,616.7562 C3912.94,631.3163 3989.84,661.0963 4052.93,689.7763" fill="none" id="CourseService-backto-CourseController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="1632.3,573.8163,1638.7759,581.2366,1636.8343,575.9234,1642.1475,573.9818,1632.3,573.8163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to CourseController--><g class="link" data-entity-1="Course" data-entity-2="CourseController" data-source-line="295" data-uid="lnk56" id="link_Course_CourseController"><path codeLine="295" d="M2839.7422,330.8969 C2853.7922,355.3169 2869.52,373.3162 2894,387.3963 C2907.72,395.2863 5161.83,384.1863 5173,395.3963 C5239.34,461.9663 5238.94,539.8863 5173,606.8663 C5160.68,619.3763 4558.2,613.2362 4541,616.7562 C4468.28,631.6463 4391.53,661.2763 4328.4,689.7663" fill="none" id="Course-backto-CourseController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2836.75,325.6962,2837.7712,335.492,2839.2435,330.0301,2844.7054,331.5024,2836.75,325.6962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link User to LoginController--><g class="link" data-entity-1="User" data-entity-2="LoginController" data-source-line="296" data-uid="lnk57" id="link_User_LoginController"><path codeLine="296" d="M3467.5909,241.1241 C3621.2609,273.5241 4037.45,356.8262 4394,387.3963 C4404.27,388.2763 5128.75,388.0662 5136,395.3963 C5202.1,462.2063 5202.23,540.1763 5136,606.8663 C5121.97,620.9962 3721.18,611.4063 3702,616.7562 C3637.03,634.8863 3571.82,675.4263 3525.64,708.8163" fill="none" id="User-backto-LoginController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3461.72,239.8863,3469.7012,245.657,3466.6124,240.9178,3471.3516,237.8291,3461.72,239.8863" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link UserService to LoginController--><g class="link" data-entity-1="UserService" data-entity-2="LoginController" data-source-line="297" data-uid="lnk58" id="link_UserService_LoginController"><path codeLine="297" d="M2709.8026,549.9227 C2727.9426,571.7727 2751.12,594.1563 2782,606.8663 C2822.19,623.4063 3130.83,606.2663 3173,616.7562 C3247.68,635.3463 3325.38,675.4962 3381.22,708.6263" fill="none" id="UserService-backto-LoginController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2705.97,545.3063,2708.6413,554.7859,2709.1638,549.1533,2714.7965,549.6758,2705.97,545.3063" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to LoginController--><g class="link" data-entity-1="Result" data-entity-2="LoginController" data-source-line="298" data-uid="lnk59" id="link_Result_LoginController"><path codeLine="298" d="M2663.7476,366.9844 C2678.5376,376.4244 2689,381.3462 2705,387.3963 C2720.6,393.2963 5095.22,383.5762 5107,395.3963 C5140.17,428.6763 5140.11,573.5163 5107,606.8663 C5093.25,620.7163 3720.8,611.5163 3702,616.7562 C3637.03,634.8963 3571.82,675.4263 3525.64,708.8263" fill="none" id="Result-backto-LoginController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2658.69,363.7563,2664.1243,371.9701,2662.9047,366.4463,2668.4285,365.2267,2658.69,363.7563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Score to ScoreController--><g class="link" data-entity-1="Score" data-entity-2="ScoreController" data-source-line="299" data-uid="lnk60" id="link_Score_ScoreController"><path codeLine="299" d="M2985.9909,284.4332 C2996.4509,321.7132 3015.09,363.7162 3053,387.3963 C3080.59,404.6263 5370.33,374.1962 5395,395.3963 C5467.16,457.3762 5381.81,523.7063 5428,606.8663 C5443.26,634.3363 5465.44,659.1563 5489,680.4563" fill="none" id="Score-backto-ScoreController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2984.37,278.6563,2982.95,288.4022,2985.7207,283.4703,2990.6526,286.241,2984.37,278.6563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to ScoreController--><g class="link" data-entity-1="Result" data-entity-2="ScoreController" data-source-line="300" data-uid="lnk61" id="link_Result_ScoreController"><path codeLine="300" d="M2663.7491,366.9919 C2678.5391,376.4219 2689,381.3462 2705,387.3963 C2737.78,399.7863 5197.56,378.0363 5228,395.3963 C5323.04,449.5963 5268.02,539.2163 5354,606.8663 C5365.7,616.0663 5372.53,610.4363 5386,616.7562 C5423.57,634.4063 5462.23,657.6463 5496.45,680.2763" fill="none" id="Result-backto-ScoreController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2658.69,363.7663,2664.1283,371.9775,2662.906,366.4543,2668.4292,365.232,2658.69,363.7663" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to ScoreController--><g class="link" data-entity-1="Student" data-entity-2="ScoreController" data-source-line="301" data-uid="lnk62" id="link_Student_ScoreController"><path codeLine="301" d="M3276.7588,322.1783 C3286.8088,349.5383 3300.45,371.0662 3325,387.3963 C3347.48,402.3462 5244.29,384.5163 5269,395.3963 C5401.21,453.5863 5504.68,591.8663 5560.42,680.5163" fill="none" id="Student-backto-ScoreController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3274.69,316.5463,3274.0385,326.3735,3276.414,321.2396,3281.5479,323.6151,3274.69,316.5463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link ScoreService to ScoreController--><g class="link" data-entity-1="ScoreService" data-entity-2="ScoreController" data-source-line="302" data-uid="lnk63" id="link_ScoreService_ScoreController"><path codeLine="302" d="M2510.2061,585.4405 C2535.4161,595.1905 2556.27,601.5163 2582,606.8663 C2658.26,622.7163 5311.38,594.4263 5386,616.7562 C5429.91,629.9063 5473.25,654.8563 5509.7,680.3163" fill="none" id="ScoreService-backto-ScoreController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2504.61,583.2763,2511.5612,590.2534,2509.2734,585.0798,2514.4469,582.792,2504.61,583.2763" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to ScoreController--><g class="link" data-entity-1="Course" data-entity-2="ScoreController" data-source-line="303" data-uid="lnk64" id="link_Course_ScoreController"><path codeLine="303" d="M2839.7413,330.8974 C2853.7913,355.3274 2869.52,373.3162 2894,387.3963 C2908.83,395.9263 5345.02,384.2463 5358,395.3963 C5430.16,457.3762 5341.05,525.9063 5391,606.8663 C5408.4,635.0663 5433.1,659.5663 5459.6,680.2262" fill="none" id="Course-backto-ScoreController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2836.75,325.6962,2837.7694,335.4922,2839.2427,330.0306,2844.7044,331.5038,2836.75,325.6962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to studentController--><g class="link" data-entity-1="Student" data-entity-2="studentController" data-source-line="304" data-uid="lnk65" id="link_Student_studentController"><path codeLine="304" d="M3276.7588,322.1783 C3286.8088,349.5383 3300.45,371.0662 3325,387.3963 C3347.16,402.1263 5222.22,376.5363 5241,395.3963 C5317.9,472.6063 5264.27,607.2462 5219.09,689.6163" fill="none" id="Student-backto-studentController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3274.69,316.5463,3274.0385,326.3735,3276.414,321.2396,3281.5479,323.6151,3274.69,316.5463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link StudentService to studentController--><g class="link" data-entity-1="StudentService" data-entity-2="studentController" data-source-line="305" data-uid="lnk66" id="link_StudentService_studentController"><path codeLine="305" d="M3120.8528,576.0846 C3154.4028,589.6446 3185.64,599.8263 3221,606.8663 C3268.46,616.3163 4916.78,602.4363 4963,616.7562 C5010.98,631.6263 5057.91,661.3463 5095.37,689.9063" fill="none" id="StudentService-backto-studentController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3115.29,573.8363,3122.1353,580.9173,3119.9257,575.7099,3125.1331,573.5002,3115.29,573.8363" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to studentController--><g class="link" data-entity-1="Result" data-entity-2="studentController" data-source-line="306" data-uid="lnk67" id="link_Result_studentController"><path codeLine="306" d="M2663.7491,366.9919 C2678.5391,376.4219 2689,381.3462 2705,387.3963 C2721.18,393.5063 5183.79,383.1363 5196,395.3963 C5272.05,471.6863 5238.01,607.2663 5206.44,689.9563" fill="none" id="Result-backto-studentController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2658.69,363.7663,2664.1283,371.9775,2662.906,366.4543,2668.4292,365.232,2658.69,363.7663" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Teacher to TeacherController--><g class="link" data-entity-1="Teacher" data-entity-2="TeacherController" data-source-line="307" data-uid="lnk68" id="link_Teacher_TeacherController"><path codeLine="307" d="M3137.1948,312.5888 C3146.9848,343.0688 3161.55,369.1363 3189,387.3963 C3212.34,402.9163 5187.22,375.5363 5207,395.3963 C5273.33,461.9863 5272.09,539.0663 5207,606.8663 C5188.29,626.3563 4989.67,608.3063 4964,616.7562 C4916.82,632.2963 4870.43,661.6263 4833.13,689.7463" fill="none" id="Teacher-backto-TeacherController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3135.36,306.8763,3134.3039,316.6683,3136.889,311.6367,3141.9206,314.2219,3135.36,306.8763" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to TeacherController--><g class="link" data-entity-1="Result" data-entity-2="TeacherController" data-source-line="308" data-uid="lnk69" id="link_Result_TeacherController"><path codeLine="308" d="M2663.7476,366.9844 C2678.5376,376.4244 2689,381.3462 2705,387.3963 C2720.96,393.4263 5149.95,383.3063 5162,395.3963 C5228.35,461.9563 5226.78,538.7663 5162,606.8663 C5146.82,622.8263 4984.89,609.7763 4964,616.7562 C4916.99,632.4762 4870.72,661.7362 4833.45,689.7663" fill="none" id="Result-backto-TeacherController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2658.69,363.7563,2664.1243,371.9701,2662.9047,366.4463,2668.4285,365.2267,2658.69,363.7563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link TeacherService to TeacherController--><g class="link" data-entity-1="TeacherService" data-entity-2="TeacherController" data-source-line="309" data-uid="lnk70" id="link_TeacherService_TeacherController"><path codeLine="309" d="M2052.3087,576.2925 C2082.6787,589.8525 2110.62,599.8363 2143,606.8663 C2208.09,621.0062 4477.38,597.0263 4541,616.7562 C4588.82,631.5963 4635.54,661.3063 4672.8,689.8763" fill="none" id="TeacherService-backto-TeacherController" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2046.83,573.8463,2053.4172,581.168,2051.3956,575.8848,2056.6788,573.8631,2046.83,573.8463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to GlobalExceptionHandler--><g class="link" data-entity-1="Result" data-entity-2="GlobalExceptionHandler" data-source-line="310" data-uid="lnk71" id="link_Result_GlobalExceptionHandler"><path codeLine="310" d="M2349.623,229.7165 C2098.133,237.6965 1614.74,269.5263 1221,395.3963 C1160.27,414.8063 1096.55,451.0363 1054.2,477.7063" fill="none" id="Result-backto-GlobalExceptionHandler" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.62,229.5263,2346.4977,225.8137,2350.6225,229.6848,2346.7514,233.8097,2355.62,229.5263" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to CourseMapper--><g class="link" data-entity-1="Course" data-entity-2="CourseMapper" data-source-line="311" data-uid="lnk72" id="link_Course_CourseMapper"><path codeLine="311" d="M2840.2028,330.9408 C2854.2328,355.2108 2869.83,373.1163 2894,387.3963 C2923,404.5163 3164.35,387.1263 3197,395.3963 C3235.24,405.0762 3274.41,422.0163 3309.21,439.9763" fill="none" id="Course-backto-CourseMapper" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2837.2,325.7463,2838.2413,335.5399,2839.7024,330.075,2845.1673,331.5361,2837.2,325.7463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Score to ScoreMapper--><g class="link" data-entity-1="Score" data-entity-2="ScoreMapper" data-source-line="312" data-uid="lnk73" id="link_Score_ScoreMapper"><path codeLine="312" d="M2986.0691,284.3209 C2996.5691,321.5409 3015.22,363.5163 3053,387.3963 C3080.01,404.4562 3598.12,384.0762 3628,395.3963 C3653.68,405.1163 3677.78,422.1263 3698.27,440.1463" fill="none" id="Score-backto-ScoreMapper" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2984.44,278.5463,2983.0338,288.2942,2985.7975,283.3584,2990.7333,286.1221,2984.44,278.5463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to StudentMapper--><g class="link" data-entity-1="Student" data-entity-2="StudentMapper" data-source-line="313" data-uid="lnk74" id="link_Student_StudentMapper"><path codeLine="313" d="M3276.7988,322.1283 C3286.8488,349.4883 3300.48,371.0163 3325,387.3963 C3347.98,402.7463 4293.24,388.4762 4320,395.3963 C4356.5,404.8262 4393.54,421.8763 4426.23,440.0062" fill="none" id="Student-backto-StudentMapper" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3274.73,316.4963,3274.0785,326.3235,3276.454,321.1896,3281.5879,323.5651,3274.73,316.4963" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Teacher to TeacherMapper--><g class="link" data-entity-1="Teacher" data-entity-2="TeacherMapper" data-source-line="314" data-uid="lnk75" id="link_Teacher_TeacherMapper"><path codeLine="314" d="M3137.4159,312.9052 C3147.2259,343.2452 3161.75,369.1263 3189,387.3963 C3205.31,398.3262 3876.99,390.4462 3896,395.3963 C3932.39,404.8663 3969.32,421.8563 4001.94,439.9363" fill="none" id="Teacher-backto-TeacherMapper" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3135.57,307.1962,3134.5329,316.9903,3137.1083,311.9537,3142.1449,314.5291,3135.57,307.1962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link User to UserMapper--><g class="link" data-entity-1="User" data-entity-2="UserMapper" data-source-line="315" data-uid="lnk76" id="link_User_UserMapper"><path codeLine="315" d="M3467.6157,240.8514 C3621.3357,272.6414 4037.64,354.6763 4394,387.3963 C4432.74,390.9462 4706.77,384.1363 4744,395.3963 C4776.04,405.0762 4807.92,422.0762 4835.84,440.0963" fill="none" id="User-backto-UserMapper" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3461.74,239.6363,3469.7434,245.376,3466.6364,240.6488,3471.3636,237.5418,3461.74,239.6363" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to CourseService--><g class="link" data-entity-1="Result" data-entity-2="CourseService" data-source-line="316" data-uid="lnk77" id="link_Result_CourseService"><path codeLine="316" d="M2349.988,247.5386 C2185.718,270.5486 1935.1,315.2563 1725,395.3963 C1687.98,409.5163 1649.69,429.8263 1616.59,449.4763" fill="none" id="Result-backto-CourseService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.93,246.7062,2346.4621,243.9934,2350.9783,247.3998,2347.5719,251.9161,2355.93,246.7062" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to CourseService--><g class="link" data-entity-1="Course" data-entity-2="CourseService" data-source-line="317" data-uid="lnk78" id="link_Course_CourseService"><path codeLine="317" d="M2759.3348,331.2478 C2745.1648,355.5178 2729.4,373.3563 2705,387.3963 C2681.4,400.9662 1751.28,388.2763 1725,395.3963 C1684.04,406.4863 1642.7,428.0063 1608.25,449.4763" fill="none" id="Course-backto-CourseService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2762.36,326.0662,2754.3678,331.8217,2759.839,330.3842,2761.2765,335.8553,2762.36,326.0662" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to ScoreService--><g class="link" data-entity-1="Student" data-entity-2="ScoreService" data-source-line="318" data-uid="lnk79" id="link_Student_ScoreService"><path codeLine="318" d="M3237.1594,322.0476 C3227.0994,349.4076 3213.48,370.9562 3189,387.3963 C3175,396.7963 2598.34,391.2363 2582,395.3963 C2544.63,404.8863 2506.54,421.8863 2472.84,439.9663" fill="none" id="Student-backto-ScoreService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3239.23,316.4163,3232.3698,323.4829,3237.5045,321.1091,3239.8784,326.2437,3239.23,316.4163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Score to ScoreService--><g class="link" data-entity-1="Score" data-entity-2="ScoreService" data-source-line="319" data-uid="lnk80" id="link_Score_ScoreService"><path codeLine="319" d="M2961.7245,284.5762 C2951.1445,321.6762 2932.51,363.3863 2895,387.3963 C2880.35,396.7663 2598.83,391.0063 2582,395.3963 C2544.89,405.0662 2507.04,421.9963 2473.48,439.9563" fill="none" id="Score-backto-ScoreService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2963.37,278.8063,2957.0552,286.3642,2961.9988,283.6146,2964.7485,288.5582,2963.37,278.8063" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to ScoreService--><g class="link" data-entity-1="Result" data-entity-2="ScoreService" data-source-line="320" data-uid="lnk81" id="link_Result_ScoreService"><path codeLine="320" d="M2442.3554,369.0796 C2427.5854,395.4196 2415.62,416.7663 2402.64,439.9263" fill="none" id="Result-backto-ScoreService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2445.29,363.8462,2437.3992,369.7399,2442.8445,368.2074,2444.377,373.6527,2445.29,363.8462" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to ScoreService--><g class="link" data-entity-1="Course" data-entity-2="ScoreService" data-source-line="321" data-uid="lnk82" id="link_Course_ScoreService"><path codeLine="321" d="M2758.2937,331.1654 C2744.1737,355.1254 2728.72,372.8362 2705,387.3963 C2681.66,401.7162 2608.36,387.9662 2582,395.3963 C2545.71,405.6163 2508.57,422.3763 2475.42,439.9763" fill="none" id="Course-backto-ScoreService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2761.34,325.9963,2753.3245,331.7191,2758.8014,330.3039,2760.2167,335.7808,2761.34,325.9963" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to StudentService--><g class="link" data-entity-1="Student" data-entity-2="StudentService" data-source-line="322" data-uid="lnk83" id="link_Student_StudentService"><path codeLine="322" d="M3228.0049,322.1799 C3217.7749,346.8899 3206.52,366.9562 3189,387.3963 C3168.44,411.3763 3142.01,432.1663 3115.17,449.4763" fill="none" id="Student-backto-StudentService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3230.3,316.6363,3223.1616,323.4217,3228.3874,321.256,3230.5531,326.4819,3230.3,316.6363" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to StudentService--><g class="link" data-entity-1="Result" data-entity-2="StudentService" data-source-line="323" data-uid="lnk84" id="link_Result_StudentService"><path codeLine="323" d="M2667.1095,367.1633 C2680.9295,376.2133 2690.29,380.9662 2705,387.3963 C2736.53,401.1563 2749.18,385.0662 2782,395.3963 C2822.17,408.0263 2863.35,428.8863 2898.36,449.4163" fill="none" id="Result-backto-StudentService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2662.09,363.8763,2667.4279,372.1531,2666.2729,366.6154,2671.8106,365.4604,2662.09,363.8763" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link User to UserService--><g class="link" data-entity-1="User" data-entity-2="UserService" data-source-line="324" data-uid="lnk85" id="link_User_UserService"><path codeLine="324" d="M3390.6347,284.2885 C3380.5847,321.4785 3362.47,363.4363 3325,387.3963 C3299.58,403.6463 2809.36,382.6663 2782,395.3963 C2745.37,412.4263 2716.9,450.0662 2699.86,477.7063" fill="none" id="User-backto-UserService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3392.2,278.4963,3385.9906,286.1411,3390.8956,283.3231,3393.7136,288.2281,3392.2,278.4963" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to UserService--><g class="link" data-entity-1="Result" data-entity-2="UserService" data-source-line="325" data-uid="lnk86" id="link_Result_UserService"><path codeLine="325" d="M2602.138,369.0721 C2626.108,411.5621 2647.47,449.4263 2663.49,477.8263" fill="none" id="Result-backto-UserService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2599.19,363.8462,2600.1282,373.6503,2601.6467,368.2011,2607.0959,369.7196,2599.19,363.8462" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Teacher to TeacherService--><g class="link" data-entity-1="Teacher" data-entity-2="TeacherService" data-source-line="326" data-uid="lnk87" id="link_Teacher_TeacherService"><path codeLine="326" d="M3105.1465,312.9156 C3095.5265,343.2556 3081.17,369.1263 3054,387.3963 C3033,401.5163 2167.48,388.9762 2143,395.3963 C2100.71,406.4762 2057.79,427.9963 2021.93,449.4663" fill="none" id="Teacher-backto-TeacherService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3106.96,307.1962,3100.4269,314.5664,3105.4488,311.9624,3108.0527,316.9843,3106.96,307.1962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to TeacherService--><g class="link" data-entity-1="Result" data-entity-2="TeacherService" data-source-line="327" data-uid="lnk88" id="link_Result_TeacherService"><path codeLine="327" d="M2350.4409,299.5162 C2283.6709,328.6562 2211.84,361.2062 2143,395.3963 C2109.32,412.1163 2073.26,431.4663 2040.73,449.4763" fill="none" id="Result-backto-TeacherService" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.94,297.1163,2346.0914,297.0501,2351.3574,299.1162,2349.2913,304.3822,2355.94,297.1163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to CourseServiceImpl--><g class="link" data-entity-1="Result" data-entity-2="CourseServiceImpl" data-source-line="328" data-uid="lnk89" id="link_Result_CourseServiceImpl"><path codeLine="328" d="M2349.5822,237.1787 C2019.1122,258.2887 1311.6,312.6463 1239,395.3963 C1177.01,466.0463 1208.75,517.8763 1239,606.8663 C1247.87,632.9563 1263.17,658.0863 1279.86,680.1763" fill="none" id="Result-backto-CourseServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.57,236.7963,2346.3333,233.3781,2350.5802,237.115,2346.8433,241.3619,2355.57,236.7963" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to CourseServiceImpl--><g class="link" data-entity-1="Course" data-entity-2="CourseServiceImpl" data-source-line="329" data-uid="lnk90" id="link_Course_CourseServiceImpl"><path codeLine="329" d="M2759.6264,330.8945 C2745.4364,355.3245 2729.57,373.3262 2705,387.3963 C2680.87,401.2062 722.62,375.6962 703,395.3963 C636.67,461.9863 644.62,533.2063 703,606.8663 C760.81,679.8163 1000.8,721.4663 1173.3,742.4762" fill="none" id="Course-backto-CourseServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2762.64,325.7062,2754.6608,331.4796,2760.1287,330.0298,2761.5785,335.4977,2762.64,325.7062" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link CourseMapper to CourseServiceImpl--><g class="link" data-entity-1="CourseMapper" data-entity-2="CourseServiceImpl" data-source-line="330" data-uid="lnk91" id="link_CourseMapper_CourseServiceImpl"><path codeLine="330" d="M3271.088,585.4421 C3245.068,595.1421 3223.45,601.5062 3197,606.8663 C3152.38,615.8963 1601.31,602.7362 1558,616.7562 C1517,630.0363 1477.21,655.0163 1444,680.4663" fill="none" id="CourseMapper-backto-CourseServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3276.71,583.3463,3266.8797,582.742,3272.025,585.0928,3269.6742,590.238,3276.71,583.3463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Score to ScoreServiceImpl--><g class="link" data-entity-1="Score" data-entity-2="ScoreServiceImpl" data-source-line="331" data-uid="lnk92" id="link_Score_ScoreServiceImpl"><path codeLine="331" d="M2962.0073,284.4326 C2951.5373,321.7026 2932.9,363.7162 2895,387.3963 C2870.3,402.8262 818.56,374.7563 798,395.3963 C731.67,461.9763 731.82,540.1263 798,606.8663 C809.52,618.4862 1960.34,612.0263 1976,616.7562 C2008.75,626.6463 2041.19,643.0663 2070.69,661.3363" fill="none" id="Score-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2963.63,278.6563,2957.345,286.239,2962.2777,283.4699,2965.0468,288.4027,2963.63,278.6563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link CourseMapper to ScoreServiceImpl--><g class="link" data-entity-1="CourseMapper" data-entity-2="ScoreServiceImpl" data-source-line="332" data-uid="lnk93" id="link_CourseMapper_ScoreServiceImpl"><path codeLine="332" d="M3270.7492,585.4054 C3244.8292,595.0854 3223.33,601.4463 3197,606.8663 C3154.5,615.6163 2457.51,604.1263 2416,616.7562 C2383.38,626.6863 2351.06,643.0563 2321.63,661.2663" fill="none" id="CourseMapper-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3276.37,583.3063,3266.5393,582.7077,3271.686,585.0555,3269.3382,590.2022,3276.37,583.3063" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to ScoreServiceImpl--><g class="link" data-entity-1="Result" data-entity-2="ScoreServiceImpl" data-source-line="333" data-uid="lnk94" id="link_Result_ScoreServiceImpl"><path codeLine="333" d="M2349.8048,238.2676 C2030.7448,260.7276 1363.74,316.5762 1295,395.3963 C1233.22,466.2263 1229.03,539.9263 1295,606.8663 C1308.28,620.3363 1957.91,611.2362 1976,616.7562 C2008.61,626.7163 2040.93,643.0963 2070.35,661.3063" fill="none" id="Result-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.79,237.8462,2346.5313,234.4881,2350.8023,238.1974,2347.0931,242.4684,2355.79,237.8462" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link StudentMapper to ScoreServiceImpl--><g class="link" data-entity-1="StudentMapper" data-entity-2="ScoreServiceImpl" data-source-line="334" data-uid="lnk95" id="link_StudentMapper_ScoreServiceImpl"><path codeLine="334" d="M4389.2163,585.5675 C4364.8763,595.2675 4344.91,601.5163 4320,606.8663 C4268.29,617.9762 2466.66,601.5463 2416,616.7562 C2383.24,626.5963 2350.79,642.9962 2321.28,661.2663" fill="none" id="StudentMapper-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="4394.79,583.3463,4384.9486,582.9623,4390.1453,585.1973,4387.9103,590.3939,4394.79,583.3463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to ScoreServiceImpl--><g class="link" data-entity-1="Student" data-entity-2="ScoreServiceImpl" data-source-line="335" data-uid="lnk96" id="link_Student_ScoreServiceImpl"><path codeLine="335" d="M3237.2519,322.1886 C3227.2019,349.5586 3213.56,371.0762 3189,387.3963 C3175.43,396.4063 854.5,383.8563 843,395.3963 C776.65,461.9663 776.83,540.1163 843,606.8663 C854.08,618.0463 1960.94,612.2063 1976,616.7562 C2008.74,626.6563 2041.18,643.0763 2070.69,661.3463" fill="none" id="Student-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3239.32,316.5563,3232.4629,323.626,3237.5966,321.2498,3239.9727,326.3835,3239.32,316.5563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to ScoreServiceImpl--><g class="link" data-entity-1="Course" data-entity-2="ScoreServiceImpl" data-source-line="336" data-uid="lnk97" id="link_Course_ScoreServiceImpl"><path codeLine="336" d="M2759.6248,330.8936 C2745.4248,355.3236 2729.57,373.3262 2705,387.3963 C2681.57,400.8063 780.05,376.2663 761,395.3963 C694.68,461.9863 694.81,540.1363 761,606.8663 C772.88,618.8463 1959.84,611.8863 1976,616.7562 C2008.75,626.6463 2041.19,643.0663 2070.69,661.3363" fill="none" id="Course-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2762.64,325.7062,2754.659,331.4772,2760.1274,330.0291,2761.5755,335.4974,2762.64,325.7062" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link ScoreMapper to ScoreServiceImpl--><g class="link" data-entity-1="ScoreMapper" data-entity-2="ScoreServiceImpl" data-source-line="337" data-uid="lnk98" id="link_ScoreMapper_ScoreServiceImpl"><path codeLine="337" d="M3672.3432,586.3821 C3656.7432,596.0721 3645.06,601.3863 3628,606.8663 C3563.89,627.4363 2480.46,597.2963 2416,616.7562 C2383.25,626.6463 2350.81,643.0663 2321.31,661.3363" fill="none" id="ScoreMapper-backto-ScoreServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3677.44,583.2163,3667.6842,584.5672,3673.1927,585.8545,3671.9054,591.3629,3677.44,583.2163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to StudentServiceImpl--><g class="link" data-entity-1="Student" data-entity-2="StudentServiceImpl" data-source-line="338" data-uid="lnk99" id="link_Student_StudentServiceImpl"><path codeLine="338" d="M3237.2512,322.1883 C3227.2012,349.5483 3213.56,371.0762 3189,387.3963 C3175.77,396.1863 912.22,384.1363 901,395.3963 C834.66,461.9663 834.72,540.2262 901,606.8663 C919.19,625.1563 2733.4,609.0163 2758,616.7562 C2805.3,631.6363 2851.37,661.3563 2888.08,689.9163" fill="none" id="Student-backto-StudentServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3239.32,316.5563,3232.4621,323.6251,3237.596,321.2496,3239.9715,326.3835,3239.32,316.5563" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to StudentServiceImpl--><g class="link" data-entity-1="Result" data-entity-2="StudentServiceImpl" data-source-line="339" data-uid="lnk100" id="link_Result_StudentServiceImpl"><path codeLine="339" d="M2349.8656,238.548 C2033.6956,261.358 1376.78,317.5563 1309,395.3963 C1278.14,430.8363 1275.88,573.5263 1309,606.8663 C1323.18,621.1463 2738.81,610.7063 2758,616.7562 C2805.29,631.6763 2851.36,661.3963 2888.07,689.9463" fill="none" id="Result-backto-StudentServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.85,238.1163,2346.5855,234.7742,2350.863,238.476,2347.1612,242.7535,2355.85,238.1163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link StudentMapper to StudentServiceImpl--><g class="link" data-entity-1="StudentMapper" data-entity-2="StudentServiceImpl" data-source-line="340" data-uid="lnk101" id="link_StudentMapper_StudentServiceImpl"><path codeLine="340" d="M4389.1971,585.4895 C4364.8571,595.1995 4344.9,601.4663 4320,606.8663 C4260.33,619.8063 3279.99,601.0062 3221,616.7562 C3165.65,631.5363 3109.6,661.1463 3064.19,689.6563" fill="none" id="StudentMapper-backto-StudentServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="4394.77,583.2663,4384.9285,582.8858,4390.1259,585.1189,4387.8928,590.3163,4394.77,583.2663" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link User to UserServiceImpl--><g class="link" data-entity-1="User" data-entity-2="UserServiceImpl" data-source-line="341" data-uid="lnk102" id="link_User_UserServiceImpl"><path codeLine="341" d="M3390.7147,284.4112 C3380.7147,321.6712 3362.6,363.6463 3325,387.3963 C3310.77,396.3763 912.88,383.4662 901,395.3963 C834.65,461.9663 834.76,540.1863 901,606.8663 C915.83,621.7963 2396.25,609.4962 2416,616.7562 C2466.21,635.2262 2511.97,675.5062 2543.5,708.7163" fill="none" id="User-backto-UserServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3392.27,278.6163,3386.0738,286.2718,3390.9739,283.4454,3393.8004,288.3455,3392.27,278.6163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to UserServiceImpl--><g class="link" data-entity-1="Result" data-entity-2="UserServiceImpl" data-source-line="342" data-uid="lnk103" id="link_Result_UserServiceImpl"><path codeLine="342" d="M2349.8679,253.9962 C2103.4779,291.3762 1632.37,358.0463 1224,387.3963 C1213.22,388.1663 842.56,387.6763 835,395.3963 C769.23,462.5363 768.75,540.1963 835,606.8663 C850.48,622.4363 2395.39,609.1863 2416,616.7562 C2466.21,635.2262 2511.98,675.5062 2543.5,708.7163" fill="none" id="Result-backto-UserServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.8,253.0962,2346.3018,250.4915,2350.8566,253.8462,2347.5018,258.4009,2355.8,253.0962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link UserMapper to UserServiceImpl--><g class="link" data-entity-1="UserMapper" data-entity-2="UserServiceImpl" data-source-line="343" data-uid="lnk104" id="link_UserMapper_UserServiceImpl"><path codeLine="343" d="M4803.8062,585.7091 C4782.7462,595.4691 4765.94,601.4663 4744,606.8663 C4690.43,620.0563 2809.79,597.7562 2758,616.7562 C2707.78,635.1863 2662.01,675.4762 2630.49,708.6963" fill="none" id="UserMapper-backto-UserServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="4809.25,583.1863,4799.4024,583.3413,4804.7135,585.2886,4802.7662,590.5998,4809.25,583.1863" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Teacher to TeacherServiceImpl--><g class="link" data-entity-1="Teacher" data-entity-2="TeacherServiceImpl" data-source-line="344" data-uid="lnk105" id="link_Teacher_TeacherServiceImpl"><path codeLine="344" d="M3105.3392,312.5696 C3095.7492,343.0496 3081.34,369.1163 3054,387.3963 C3040.9,396.1463 796.12,384.2363 785,395.3963 C718.66,461.9663 718.97,539.9862 785,606.8663 C800.09,622.1463 1537.53,610.2663 1558,616.7562 C1605.2,631.7462 1651.28,661.2863 1688.11,689.6963" fill="none" id="Teacher-backto-TeacherServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3107.14,306.8462,3100.6233,314.2308,3105.6394,311.6157,3108.2544,316.6319,3107.14,306.8462" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Result to TeacherServiceImpl--><g class="link" data-entity-1="Result" data-entity-2="TeacherServiceImpl" data-source-line="345" data-uid="lnk106" id="link_Result_TeacherServiceImpl"><path codeLine="345" d="M2349.6291,254.3245 C2103.1991,292.0645 1632.3,359.1163 1224,387.3963 C1209.56,388.3963 713.16,385.0762 703,395.3963 C637.05,462.3563 636.93,540.0263 703,606.8663 C719.7,623.7562 1535.36,609.5863 1558,616.7562 C1605.21,631.7163 1651.29,661.2562 1688.12,689.6663" fill="none" id="Result-backto-TeacherServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2355.56,253.4163,2346.0582,250.8248,2350.6176,254.1732,2347.2692,258.7326,2355.56,253.4163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link TeacherMapper to TeacherServiceImpl--><g class="link" data-entity-1="TeacherMapper" data-entity-2="TeacherServiceImpl" data-source-line="346" data-uid="lnk107" id="link_TeacherMapper_TeacherServiceImpl"><path codeLine="346" d="M3965.2171,585.5695 C3940.8771,595.2795 3920.91,601.5163 3896,606.8663 C3843.86,618.0763 2026.9,600.8163 1976,616.7562 C1928.53,631.6263 1882.25,661.3463 1845.35,689.9063" fill="none" id="TeacherMapper-backto-TeacherServiceImpl" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3970.79,583.3463,3960.9485,582.9658,3966.1459,585.1989,3963.9128,590.3963,3970.79,583.3463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Teacher to Test05ApplicationTests--><g class="link" data-entity-1="Teacher" data-entity-2="Test05ApplicationTests" data-source-line="347" data-uid="lnk108" id="link_Teacher_Test05ApplicationTests"><path codeLine="347" d="M3137.1948,312.5988 C3146.9848,343.0788 3161.55,369.1463 3189,387.3963 C3215.8,405.2062 5481.59,374.4263 5506,395.3963 C5578.16,457.3762 5467.82,543.7562 5539,606.8663 C5562.71,627.8863 5795.34,603.2462 5824,616.7562 C5838,623.3563 5851.1,632.2963 5863.17,642.5163" fill="none" id="Teacher-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3135.36,306.8863,3134.3039,316.6783,3136.889,311.6467,3141.9206,314.2319,3135.36,306.8863" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link UserMapper to Test05ApplicationTests--><g class="link" data-entity-1="UserMapper" data-entity-2="Test05ApplicationTests" data-source-line="348" data-uid="lnk109" id="link_UserMapper_Test05ApplicationTests"><path codeLine="348" d="M5039.8426,585.9074 C5059.3126,595.5874 5074.55,601.4063 5095,606.8663 C5134.13,617.3263 5787.18,599.8763 5824,616.7562 C5838.22,623.2863 5851.49,632.2462 5863.7,642.5463" fill="none" id="UserMapper-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="5034.47,583.2362,5040.7482,590.8247,5038.9472,585.4622,5044.3097,583.6612,5034.47,583.2362" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link CourseMapper to Test05ApplicationTests--><g class="link" data-entity-1="CourseMapper" data-entity-2="Test05ApplicationTests" data-source-line="349" data-uid="lnk110" id="link_CourseMapper_Test05ApplicationTests"><path codeLine="349" d="M3561.3732,585.6425 C3584.8132,595.3525 3603.91,601.5163 3628,606.8663 C3657.77,613.4762 5796.22,604.1663 5824,616.7562 C5838.25,623.2163 5851.54,632.1463 5863.76,642.4163" fill="none" id="CourseMapper-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3555.83,583.3463,3562.614,590.4861,3560.4493,585.2598,3565.6757,583.0952,3555.83,583.3463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link StudentMapper to Test05ApplicationTests--><g class="link" data-entity-1="StudentMapper" data-entity-2="Test05ApplicationTests" data-source-line="350" data-uid="lnk111" id="link_StudentMapper_Test05ApplicationTests"><path codeLine="350" d="M4674.8021,585.4814 C4699.1421,595.2014 4719.1,601.4663 4744,606.8663 C4773.32,613.2262 5796.7,604.3163 5824,616.7562 C5838.23,623.2462 5851.52,632.1963 5863.73,642.4762" fill="none" id="StudentMapper-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="4669.23,583.2562,4676.1047,590.3088,4673.8734,585.1106,4679.0716,582.8793,4669.23,583.2562" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link User to Test05ApplicationTests--><g class="link" data-entity-1="User" data-entity-2="Test05ApplicationTests" data-source-line="351" data-uid="lnk112" id="link_User_Test05ApplicationTests"><path codeLine="351" d="M3467.579,241.243 C3621.229,273.883 4037.37,357.7262 4394,387.3963 C4413.29,388.9963 5771.79,384.8063 5788,395.3963 C5871.39,449.8162 5912.51,557.8963 5932.54,642.3763" fill="none" id="User-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3461.71,239.9963,3469.6824,245.7791,3466.6009,241.0352,3471.3447,237.9537,3461.71,239.9963" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Student to Test05ApplicationTests--><g class="link" data-entity-1="Student" data-entity-2="Test05ApplicationTests" data-source-line="352" data-uid="lnk113" id="link_Student_Test05ApplicationTests"><path codeLine="352" d="M3276.7563,322.1792 C3286.7963,349.5492 3300.45,371.0662 3325,387.3963 C3348.96,403.3262 5369.13,388.2162 5397,395.3963 C5586.81,444.2663 5601.35,535.7462 5784,606.8663 C5801.07,613.5062 5808.34,607.2763 5824,616.7562 C5836.1,624.0863 5847.68,632.9363 5858.58,642.6063" fill="none" id="Student-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3274.69,316.5463,3274.0342,326.3732,3276.4119,321.2404,3281.5448,323.6182,3274.69,316.5463" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link TeacherMapper to Test05ApplicationTests--><g class="link" data-entity-1="TeacherMapper" data-entity-2="Test05ApplicationTests" data-source-line="353" data-uid="lnk114" id="link_TeacherMapper_Test05ApplicationTests"><path codeLine="353" d="M4250.7929,585.5395 C4275.1329,595.2495 4295.1,601.4962 4320,606.8663 C4360.84,615.6763 5785.97,599.4762 5824,616.7562 C5838.24,623.2362 5851.53,632.1663 5863.74,642.4463" fill="none" id="TeacherMapper-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="4245.22,583.3163,4252.0972,590.3663,4249.8641,585.1689,4255.0615,582.9358,4245.22,583.3163" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link Course to Test05ApplicationTests--><g class="link" data-entity-1="Course" data-entity-2="Test05ApplicationTests" data-source-line="354" data-uid="lnk115" id="link_Course_Test05ApplicationTests"><path codeLine="354" d="M2839.7397,330.8984 C2853.7797,355.3284 2869.52,373.3162 2894,387.3963 C2923.98,404.6363 5354.21,377.8362 5384,395.3963 C5476.73,450.0363 5410.03,550.9463 5502,606.8663 C5532.59,625.4563 5791.59,601.5563 5824,616.7562 C5838.01,623.3363 5851.12,632.2562 5863.2,642.4563" fill="none" id="Course-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="2836.75,325.6962,2837.7664,335.4925,2839.2414,330.0313,2844.7026,331.5063,2836.75,325.6962" style="stroke:#181818;stroke-width:1;"/></g><!--reverse link ScoreMapper to Test05ApplicationTests--><g class="link" data-entity-1="ScoreMapper" data-entity-2="Test05ApplicationTests" data-source-line="355" data-uid="lnk116" id="link_ScoreMapper_Test05ApplicationTests"><path codeLine="355" d="M3851.6392,586.4283 C3867.2492,596.1083 3878.93,601.4163 3896,606.8663 C3947.02,623.1563 5775.23,594.6363 5824,616.7562 C5838.24,623.2262 5851.54,632.1463 5863.75,642.4263" fill="none" id="ScoreMapper-backto-Test05ApplicationTests" style="stroke:#181818;stroke-width:1;stroke-dasharray:7,7;"/><polygon fill="#181818" points="3846.54,583.2663,3852.0807,591.4088,3850.7893,585.9013,3856.2968,584.6099,3846.54,583.2663" style="stroke:#181818;stroke-width:1;"/></g><!--SRC=[jLb9Szis53vNlu8plJ0ZHvDBU_3aOZjfuonj9dBQwP4YOGaEHR006DjTzDlxi904I6oIquCj0dZhXuU71u1zmKrRq6AVxKb3oXqbUvHnsg456qRAkc3iWdEADnr7roLfrlWlbBqmI2ZfckgAq0RHxCU5PCWuOlp53wiR-NFHjZKk2uv9a_sz-6wvBt2Jhq5aiyqAkcNFphEl15UBxxu7yRTusr6KhrinR71UThYkGCD6_GAFZsJnxyAseY3jwWRlqGLhKScb2HILX5QYC_z8IObG1QBU4jnyX3-UtVLVeERNpHrmpOGgKrUl2bvi2eQkP5F8FbJiF7j5Ero9iJNfQ8cW5z3g-7bsIKYDYcO1Dk06yxpttIF-TxGP9J-loHOtLpjKVhbkE0AvBIVqF7llwXOQYgeoUbXkD3wXBMQSFcPKVmGCuPJKDQAhA_15Ugexf4sbx5mZ-XMNw3oxCfl2XYtYgg-VyI_eyHwmFyk4DLkGmXzRDBQsjAYW-LDD2fwL52Q6ZuDjiKLsIqGZcFu9iQxce4xGQttg9rC6cZG0IuoaGZNYI5Fr-d0raWHWUeFgciWesualCSNAzH2JcaCRseuXEW3xUMm8M6Kez90AmgRO0pIwemKb2kGtdBThn9XOUqpzcdw26DBnF4WLi7eDgsWI40Sc-WQprqPBXuFioiKoOxohKCElmKxHLDDmNPa6TcrLSAHOvFzCofzCfnvNudgnPvarlNrCpVZLN0TLz5PVFeAE7dMjvefKA0ciWTwQPDqx0cQrDMHprz9N1C0pPPykcD2uGiTF4N3u1XNb3j69mrpr3WxVMEtUOTsRQUfZ7PwmpnmEZ6k7lHHJXz63oAYmObO_rsHJrA_xzfkYgRJJI_IG3_rP85pmcA5NphGkfRKKAU5wuTAlOF8dz6S7GY2Xozz-wUinrf86bWBL7sTwMyjsoaYmQADt9X1F6F_6yi-o3x1Cwekc-WsZUwWtniQm-o-BMowYPT-2HC3f6oeti7ymDZg9zcrHeXx-VT6smqRtGJPKJeEOA9txYifSvFQM8Qw-ZP1y3pkhtFeXF_js9M014fNcWYJMbkGcCSs4_mrtqWKSbqbkvhShDMhN30AbqAPIPYd_NL9Cp_pZ_ZqWvevALdE7LFyygyRdqXAWNPwbHijjjwwfSn4g3L6GAW24JcOp87J_FDkc0Z6aU074F6MQG7XqJO28KIaWmbG184GLDKD1TERYdooaqfqNB9UFlq3XDIt4dgbwRV3TrZ1nnZEey70EJdUDbjmHdRJa5ekhytw7X9OmQ2X1OV-5SjiSLZNskQgEe2qBS9DWNzo9KyROKI5Uu7eGAOuoJATjb1ixYTDCjV6fqgShIoWsZQr7d2OQhX5ulcTRmsv0enXEOw1JS-SwrulXeVu5JdDBTvBgYjEkTY92qxbSmwu-xNg6sLhrMAKAfOJcRf-cOyEcPsjtpe5AeaRrUMq5J5-7ctqou_P1uXQgaz8y04jIcG4uYKU67apYeyFFQKoV6CGYjumvsDeFjlR31bE-CuPHrPNcECUyDgnpwfQhDReC-oEQwSSiQp5L5A-iKxLqAdw63HSC0rMmyXYenbEye_fH9VaaKuxnv_NAF1lsJZtb97SO3fTX_Zb8eSFV8Nu4bOhrkSsbFn4Ew-Gd0HdbkckL4F8AJc_5C7KlJXYhGH9SD2unf7_g5iFStXA4s0V67gTWAHF5oLzGJ71A88oLA9xCtBk7OIEr5_mrz1XtRQf-wQ_QL6inZCe3usmXzsddwBilBrLItbW-9M_uqJ4JHm-EkdVgiJ4ECcB8F0SCLop3S13M9ryl7P-KKcwa4kx5ZabA0Qojh3I4OX1II_a9cMkPbBcMgPbhcPwv_3WOgMi0eHjE4whU7zs7iyFOaHkdZf5blFS8PK6_GNOQ76pYvb5lk5sp9kRqLBbCIfNBr5IvF35LTXpNRFNsddyM7zBjTw__W2X4S9ZXxz0ZTA275bCaNdZKSKAv3ZmvO971ST3CYZ1ThmTwUJMzPme4XahILBgnnqq79gZ63fQj-ggAnt4ojvOew7y5K8XBjG8MkL2lI_QxUn5vOClCkzcZcUYGNeOorLCIO31cOEVpXhbfZx0o7t6mL4x6B7sJiL7PP62B6e3FwWJaWeNootzMgxJjTH4gJRrYfllG8bpH-UNCSkmYK3XvnKnIr29SDtd5p1FB8lbs-kKeS_g2kN3S0jZaldV6o2GV9SEyAZc1KoPfDz_a1IyuWyS8YECLObIrWPjlydgNhZ34sE-kHt6wbztHkeFpUhhHiuUxs3e_JaeSxp1hlsswUMUFSEbglQo-ZF9D38YzfqLctF644ruGywUFM6YuNXTYC-AwY0zcbjc5TGGsPtACO1NdSNZlMgjXXACSVc-yB7vd_7O5VB4VtHDjypDD9zEn2IGgyN4uGiozAXFrdCGKhgKYynHcTht4dcQ1Dno39Tmn-dqoKj2BwBTVC4yo813sSUR8zCMiDvwJ_n_RlOLp4lPUxkFG3nlXomMXaZt5UW_h_A7p5Ds1z18v8wIOxkTslbUVQ8J31_VHEWcw95PVkaXYzaPRcDiPP0aiZhMLPAPtRX9qpjD96ZBkFEBc_Gy0]--></g></svg>