1 line
81 KiB
XML
1 line
81 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="819.2708px" preserveAspectRatio="none" style="width:2877px;height:819px;background:#FFFFFF;" version="1.1" viewBox="0 0 2877 819" width="2877.6042px" zoomAndPan="magnify"><defs/><g><!--cluster fr--><g class="cluster" data-qualified-name="fr" data-source-line="11" id="ent0004"><rect fill="none" height="812.7865" rx="1.3021" ry="1.3021" style="stroke:#000000;stroke-width:0.7813;" width="2870.8333" x="3.6458" y="3.6458"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-weight="bold" lengthAdjust="spacing" textLength="6.7683" x="1435.6784" y="11.4558">fr</text></g><!--cluster iutfbleau--><g class="cluster" data-qualified-name="fr.iutfbleau" data-source-line="11" id="ent0005"><rect fill="none" height="777.8906" rx="1.3021" ry="1.3021" style="stroke:#000000;stroke-width:0.7813;" width="2845.8333" x="16.1458" y="26.0417"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-weight="bold" lengthAdjust="spacing" textLength="37.1241" x="1420.5004" y="33.8516">iutfbleau</text></g><!--cluster sae--><g class="cluster" data-qualified-name="fr.iutfbleau.sae" data-source-line="11" id="ent0006"><rect fill="none" height="742.9948" rx="1.3021" ry="1.3021" style="stroke:#000000;stroke-width:0.7813;" width="2820.8333" x="28.6458" y="48.4375"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-weight="bold" lengthAdjust="spacing" textLength="14.2059" x="1431.9595" y="56.2475">sae</text></g><!--cluster mhuffman--><g class="cluster" data-qualified-name="fr.iutfbleau.sae.mhuffman" data-source-line="9" id="ent0002"><rect fill="none" height="385.4844" rx="1.3021" ry="1.3021" style="stroke:#000000;stroke-width:0.7813;" width="865.625" x="41.1458" y="351.0104"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-weight="bold" lengthAdjust="spacing" textLength="42.0339" x="452.9414" y="358.8204">mhuffman</text></g><!--cluster mpif--><g class="cluster" data-qualified-name="fr.iutfbleau.sae.mpif" data-source-line="69" id="ent0020"><rect fill="none" height="410.9479" rx="1.3021" ry="1.3021" style="stroke:#000000;stroke-width:0.7813;" width="947.9167" x="965.1042" y="367.9844"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-weight="bold" lengthAdjust="spacing" textLength="18.4891" x="1429.818" y="375.7943">mpif</text></g><!--class JPanel--><g class="entity" data-qualified-name="fr.iutfbleau.sae.JPanel" data-source-line="138" id="ent0034"><rect fill="#F1F1F1" height="25" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="38.8158" x="2352.4688" y="703.1615"/><ellipse cx="2360.2813" cy="711.4948" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2361.8275,714.4326 Q2361.5264,714.5872 2361.1927,714.6605 Q2360.859,714.7419 2360.4928,714.7419 Q2359.1908,714.7419 2358.499,713.8874 Q2357.8154,713.0247 2357.8154,711.3971 Q2357.8154,709.7695 2358.499,708.9069 Q2359.1908,708.0443 2360.4928,708.0443 Q2360.859,708.0443 2361.1927,708.1257 Q2361.5345,708.207 2361.8275,708.3617 L2361.8275,709.7777 Q2361.502,709.4766 2361.1927,709.3382 Q2360.8835,709.1917 2360.5579,709.1917 Q2359.8581,709.1917 2359.5,709.7533 Q2359.1419,710.3066 2359.1419,711.3971 Q2359.1419,712.4876 2359.5,713.0492 Q2359.8581,713.6025 2360.5579,713.6025 Q2360.8835,713.6025 2361.1927,713.4642 Q2361.502,713.3177 2361.8275,713.0166 L2361.8275,714.4326 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="22.1491" x="2367.5729" y="714.0191">JPanel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2352.9896" x2="2390.7637" y1="719.8281" y2="719.8281"/><line style="stroke:#181818;stroke-width:0.2604;" x1="2352.9896" x2="2390.7637" y1="723.9948" y2="723.9948"/></g><!--class JFrame--><g class="entity" data-qualified-name="fr.iutfbleau.sae.JFrame" data-source-line="139" id="ent0035"><rect fill="#F1F1F1" height="25" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="42.0664" x="1921.1563" y="548.9323"/><ellipse cx="1928.9688" cy="557.2656" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1930.515,560.2035 Q1930.2139,560.3581 1929.8802,560.4313 Q1929.5465,560.5127 1929.1803,560.5127 Q1927.8783,560.5127 1927.1865,559.6582 Q1926.5029,558.7956 1926.5029,557.168 Q1926.5029,555.5404 1927.1865,554.6777 Q1927.8783,553.8151 1929.1803,553.8151 Q1929.5465,553.8151 1929.8802,553.8965 Q1930.222,553.9779 1930.515,554.1325 L1930.515,555.5485 Q1930.1895,555.2474 1929.8802,555.109 Q1929.571,554.9626 1929.2454,554.9626 Q1928.5456,554.9626 1928.1875,555.5241 Q1927.8294,556.0775 1927.8294,557.168 Q1927.8294,558.2585 1928.1875,558.82 Q1928.5456,559.3734 1929.2454,559.3734 Q1929.571,559.3734 1929.8802,559.235 Q1930.1895,559.0885 1930.515,558.7874 L1930.515,560.2035 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="25.3998" x="1936.2604" y="559.7899">JFrame</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1921.6771" x2="1962.7019" y1="565.599" y2="565.599"/><line style="stroke:#181818;stroke-width:0.2604;" x1="1921.6771" x2="1962.7019" y1="569.7656" y2="569.7656"/></g><!--class ActionListener--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ActionListener" data-source-line="140" id="ent0036"><rect fill="#F1F1F1" height="33.488" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="156.573" x="865.4635" y="216.8073"/><ellipse cx="915.3855" cy="225.1406" fill="#B4A7E5" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M913.2614,222.9352 L913.2614,221.8122 L917.1107,221.8122 L917.1107,222.9352 L915.8249,222.9352 L915.8249,227.1426 L917.1107,227.1426 L917.1107,228.2656 L913.2614,228.2656 L913.2614,227.1426 L914.5473,227.1426 L914.5473,222.9352 L913.2614,222.9352 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" font-style="italic" lengthAdjust="spacing" textLength="52.302" x="926.0626" y="227.6649">ActionListener</text><line style="stroke:#181818;stroke-width:0.2604;" x1="865.9844" x2="1021.5157" y1="233.474" y2="233.474"/><line style="stroke:#181818;stroke-width:0.2604;" x1="865.9844" x2="1021.5157" y1="237.6406" y2="237.6406"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="150.323" x="868.5885" y="246.4922">+actionPerformed(e : ActionEvent) : void</text></g><!--class ConverterController--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ConverterController" data-source-line="143" id="ent0037"><rect fill="#F1F1F1" height="169.2952" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="246.0454" x="1047.8125" y="148.901"/><ellipse cx="1132.45" cy="157.2344" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1133.9962,160.1722 Q1133.6951,160.3268 1133.3614,160.4001 Q1133.0278,160.4814 1132.6615,160.4814 Q1131.3595,160.4814 1130.6677,159.627 Q1129.9841,158.7643 1129.9841,157.1367 Q1129.9841,155.5091 1130.6677,154.6465 Q1131.3595,153.7839 1132.6615,153.7839 Q1133.0278,153.7839 1133.3614,153.8652 Q1133.7032,153.9466 1133.9962,154.1012 L1133.9962,155.5173 Q1133.6707,155.2161 1133.3614,155.0778 Q1133.0522,154.9313 1132.7266,154.9313 Q1132.0268,154.9313 1131.6687,155.4928 Q1131.3106,156.0462 1131.3106,157.1367 Q1131.3106,158.2272 1131.6687,158.7887 Q1132.0268,159.3421 1132.7266,159.3421 Q1133.0522,159.3421 1133.3614,159.2038 Q1133.6707,159.0573 1133.9962,158.7562 L1133.9962,160.1722 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="72.3434" x="1143.127" y="159.7587">ConverterController</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1048.3333" x2="1293.3371" y1="165.5677" y2="165.5677"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="136.231" x="1050.9375" y="174.4193">-abrHuffmanR : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="136.8149" x="1050.9375" y="182.9073">-abrHuffmanG : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="136.1669" x="1050.9375" y="191.3952">-abrHuffmanB : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="125.1083" x="1050.9375" y="199.8832">-canonRED : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="135.2056" x="1050.9375" y="208.3712">-canonGREEN : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="128.8289" x="1050.9375" y="216.8591">-canonBLUE : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="71.8806" x="1050.9375" y="225.3471">-outputPath : String</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="66.5863" x="1050.9375" y="233.835">-inputPath : String</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1048.3333" x2="1293.3371" y1="237.638" y2="237.638"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="239.7954" x="1050.9375" y="246.4896">+ConverterController(fen:ConverterWindow, in:String, out:String)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="99.0356" x="1050.9375" y="254.9776">+loadImage(file:File) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="110.8454" x="1050.9375" y="263.4656">+computeFrequencies() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="97.9212" x="1050.9375" y="271.9535">+computeHuffman() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="102.2827" x="1050.9375" y="280.4415">+computeCanonical() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="122.819" x="1050.9375" y="288.9294">+saveAsPIF(pathfile:String) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="75.3555" x="1050.9375" y="297.4174">+saveViaBtn() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="102.0691" x="1050.9375" y="305.9053">+conversionProcess() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="92.2567" x="1050.9375" y="314.3933">+getImage() : RGBImage</text></g><!--class ConverterWindow--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ConverterWindow" data-source-line="163" id="ent0038"><rect fill="#F1F1F1" height="92.9036" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="370.2138" x="1922.7031" y="369.2396"/><ellipse cx="2072.9834" cy="377.5729" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2074.5296,380.5107 Q2074.2285,380.6654 2073.8948,380.7386 Q2073.5612,380.82 2073.195,380.82 Q2071.8929,380.82 2071.2012,379.9655 Q2070.5176,379.1029 2070.5176,377.4753 Q2070.5176,375.8477 2071.2012,374.985 Q2071.8929,374.1224 2073.195,374.1224 Q2073.5612,374.1224 2073.8948,374.2038 Q2074.2366,374.2852 2074.5296,374.4398 L2074.5296,375.8558 Q2074.2041,375.5547 2073.8948,375.4163 Q2073.5856,375.2699 2073.2601,375.2699 Q2072.5602,375.2699 2072.2021,375.8314 Q2071.8441,376.3848 2071.8441,377.4753 Q2071.8441,378.5658 2072.2021,379.1273 Q2072.5602,379.6807 2073.2601,379.6807 Q2073.5856,379.6807 2073.8948,379.5423 Q2074.2041,379.3958 2074.5296,379.0947 L2074.5296,380.5107 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="65.2262" x="2083.6605" y="380.0972">ConverterWindow</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1923.224" x2="2292.3961" y1="385.9063" y2="385.9063"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="78.243" x="1925.8281" y="394.7579">-bottomPanel : JPanel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1923.224" x2="2292.3961" y1="398.5609" y2="398.5609"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="77.0253" x="1925.8281" y="407.4125">+ConverterWindow()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="167.3808" x="1925.8281" y="415.9005">+setImagePreview(img:BufferedImage) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="225.8743" x="1925.8281" y="424.3884">+setFrequencyTable(freqR:int[], freqG:int[], freqB:int[]) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="359.6024" x="1925.8281" y="432.8764">+setHuffmanTable(r:Map<Integer,String>, g:Map<Integer,String>, b:Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="363.9638" x="1925.8281" y="441.3643">+setCanonicalTable(r:Map<Integer,String>, g:Map<Integer,String>, b:Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="200.1149" x="1925.8281" y="449.8523">+addSaveButton(controller:ConverterController) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="104.4937" x="1925.8281" y="458.3402">+removeSaveButton() : void</text></g><!--class CodeTablePanel--><g class="entity" data-qualified-name="fr.iutfbleau.sae.CodeTablePanel" data-source-line="174" id="ent0039"><rect fill="#F1F1F1" height="118.3675" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="445.0673" x="2149.3438" y="502.25"/><ellipse cx="2340.2996" cy="510.5833" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2341.8458,513.5212 Q2341.5447,513.6758 2341.2111,513.749 Q2340.8774,513.8304 2340.5112,513.8304 Q2339.2091,513.8304 2338.5174,512.9759 Q2337.8338,512.1133 2337.8338,510.4857 Q2337.8338,508.8581 2338.5174,507.9954 Q2339.2091,507.1328 2340.5112,507.1328 Q2340.8774,507.1328 2341.2111,507.2142 Q2341.5529,507.2956 2341.8458,507.4502 L2341.8458,508.8662 Q2341.5203,508.5651 2341.2111,508.4268 Q2340.9018,508.2803 2340.5763,508.2803 Q2339.8764,508.2803 2339.5184,508.8418 Q2339.1603,509.3952 2339.1603,510.4857 Q2339.1603,511.5762 2339.5184,512.1377 Q2339.8764,512.6911 2340.5763,512.6911 Q2340.9018,512.6911 2341.2111,512.5527 Q2341.5203,512.4063 2341.8458,512.1051 L2341.8458,513.5212 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="58.7285" x="2350.9767" y="513.1076">CodeTablePanel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2149.8646" x2="2593.8903" y1="518.9167" y2="518.9167"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="97.9497" x="2152.4688" y="527.7683">-textHuffRouge : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="90.0172" x="2152.4688" y="536.2562">-textHuffVert : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="90.8218" x="2152.4688" y="544.7442">-textHuffBleu : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="105.9748" x="2152.4688" y="553.2322">-textCanonRouge : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="98.0423" x="2152.4688" y="561.7201">-textCanonVert : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="98.8469" x="2152.4688" y="570.2081">-textCanonBleu : JTextArea</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2149.8646" x2="2593.8903" y1="574.0111" y2="574.0111"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="70.5276" x="2152.4688" y="582.8627">+CodeTablePanel()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="156.3187" x="2152.4688" y="591.3506">+creerZoneTexte(titre : String) : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="406.8237" x="2152.4688" y="599.8386">+updatesCodes(rouge : Map<Integer,String> , vert : Map<Integer,String> , bleu : Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="438.8173" x="2152.4688" y="608.3266">+updateCanonicalCodes(rouge : Map<Integer,String> , vert : Map<Integer,String> , bleu : Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="290.5345" x="2152.4688" y="616.8145">+mettreAJourZoneTexte(zone : JTextArea , codes : Map<Integer,String>) : void</text></g><!--class FrequencyTablePanel--><g class="entity" data-qualified-name="fr.iutfbleau.sae.FrequencyTablePanel" data-source-line="187" id="ent0040"><rect fill="#F1F1F1" height="75.9277" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="228.6245" x="2612.7708" y="523.4688"/><ellipse cx="2685.659" cy="531.8021" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2687.2052,534.7399 Q2686.9041,534.8945 2686.5705,534.9678 Q2686.2368,535.0492 2685.8706,535.0492 Q2684.5685,535.0492 2683.8768,534.1947 Q2683.1932,533.332 2683.1932,531.7044 Q2683.1932,530.0768 2683.8768,529.2142 Q2684.5685,528.3516 2685.8706,528.3516 Q2686.2368,528.3516 2686.5705,528.4329 Q2686.9123,528.5143 2687.2052,528.6689 L2687.2052,530.085 Q2686.8797,529.7839 2686.5705,529.6455 Q2686.2612,529.499 2685.9357,529.499 Q2685.2358,529.499 2684.8778,530.0605 Q2684.5197,530.6139 2684.5197,531.7044 Q2684.5197,532.7949 2684.8778,533.3564 Q2685.2358,533.9098 2685.9357,533.9098 Q2686.2612,533.9098 2686.5705,533.7715 Q2686.8797,533.625 2687.2052,533.3239 L2687.2052,534.7399 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="78.421" x="2696.3361" y="534.3264">FrequencyTablePanel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2613.2917" x2="2840.8745" y1="540.1354" y2="540.1354"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="82.8715" x="2615.8958" y="548.987">-freqRouge : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="74.939" x="2615.8958" y="557.475">-freqVert : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="75.7436" x="2615.8958" y="565.963">-freqBleu : JTextArea</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2613.2917" x2="2840.8745" y1="569.766" y2="569.766"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="90.7399" x="2615.8958" y="578.6176">+FrequencyTablePAnel()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="162.7843" x="2615.8958" y="587.1055">+creationZoneText(titre : String) : JTextArea</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="222.3745" x="2615.8958" y="595.5935">+updateFrequencies(freqR : int[] , freqG : int[] , freqB : int[])</text></g><!--class ImagePreviewPanel--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ImagePreviewPanel" data-source-line="196" id="ent0041"><rect fill="#F1F1F1" height="67.4398" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="149.5946" x="1981.4531" y="527.7135"/><ellipse cx="2018.2835" cy="536.0469" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2019.8297,538.9847 Q2019.5286,539.1393 2019.195,539.2126 Q2018.8613,539.2939 2018.4951,539.2939 Q2017.193,539.2939 2016.5013,538.4395 Q2015.8177,537.5768 2015.8177,535.9492 Q2015.8177,534.3216 2016.5013,533.459 Q2017.193,532.5964 2018.4951,532.5964 Q2018.8613,532.5964 2019.195,532.6777 Q2019.5368,532.7591 2019.8297,532.9137 L2019.8297,534.3298 Q2019.5042,534.0286 2019.195,533.8903 Q2018.8857,533.7438 2018.5602,533.7438 Q2017.8603,533.7438 2017.5023,534.3053 Q2017.1442,534.8587 2017.1442,535.9492 Q2017.1442,537.0397 2017.5023,537.6012 Q2017.8603,538.1546 2018.5602,538.1546 Q2018.8857,538.1546 2019.195,538.0163 Q2019.5042,537.8698 2019.8297,537.5687 L2019.8297,538.9847 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="71.5068" x="2028.9606" y="538.5712">ImagePreviewPanel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1981.974" x2="2130.5269" y1="544.3802" y2="544.3802"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="86.6277" x="1984.5781" y="553.2318">-image : BufferedImage</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" text-decoration="underline" textLength="88.7248" x="1984.5781" y="561.7198">-MAX_WIDTH : int = 800</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" text-decoration="underline" textLength="91.6407" x="1984.5781" y="570.2077">-MAX_HEIGHT : int = 600</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1981.974" x2="2130.5269" y1="574.0107" y2="574.0107"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="83.3059" x="1984.5781" y="582.8624">+ImagePreviewPanel()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="143.3446" x="1984.5781" y="591.3503">+setImage(img : BufferedImage) : void</text></g><!--class ExportButtonListener--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ExportButtonListener" data-source-line="205" id="ent0042"><rect fill="#F1F1F1" height="41.9759" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="205.425" x="841.0365" y="70.9115"/><ellipse cx="902.7201" cy="79.2448" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M904.2663,82.1826 Q903.9652,82.3372 903.6316,82.4105 Q903.2979,82.4919 902.9317,82.4919 Q901.6296,82.4919 900.9379,81.6374 Q900.2543,80.7747 900.2543,79.1471 Q900.2543,77.5195 900.9379,76.6569 Q901.6296,75.7943 902.9317,75.7943 Q903.2979,75.7943 903.6316,75.8757 Q903.9734,75.957 904.2663,76.1117 L904.2663,77.5277 Q903.9408,77.2266 903.6316,77.0882 Q903.3223,76.9417 902.9968,76.9417 Q902.2969,76.9417 901.9389,77.5033 Q901.5808,78.0566 901.5808,79.1471 Q901.5808,80.2376 901.9389,80.7992 Q902.2969,81.3525 902.9968,81.3525 Q903.3223,81.3525 903.6316,81.2142 Q903.9408,81.0677 904.2663,80.7666 L904.2663,82.1826 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="77.6306" x="913.3972" y="81.7691">ExportButtonListener</text><line style="stroke:#181818;stroke-width:0.2604;" x1="841.5573" x2="1045.9406" y1="87.5781" y2="87.5781"/><line style="stroke:#181818;stroke-width:0.2604;" x1="841.5573" x2="1045.9406" y1="91.7448" y2="91.7448"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="199.175" x="844.1615" y="100.5964">+ExportButtonListener(controller:ConverterController)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="145.6874" x="844.1615" y="109.0844">+actionPerformed(e:ActionEvent) : void</text></g><!--class ThreadSauvegardePIF--><g class="entity" data-qualified-name="fr.iutfbleau.sae.ThreadSauvegardePIF" data-source-line="210" id="ent0043"><rect fill="#F1F1F1" height="50.4639" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="253.0736" x="1064.6094" y="66.6667"/><ellipse cx="1148.8694" cy="75" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1150.4156,77.9378 Q1150.1145,78.0924 1149.7809,78.1657 Q1149.4472,78.2471 1149.081,78.2471 Q1147.7789,78.2471 1147.0872,77.3926 Q1146.4036,76.5299 1146.4036,74.9023 Q1146.4036,73.2747 1147.0872,72.4121 Q1147.7789,71.5495 1149.081,71.5495 Q1149.4472,71.5495 1149.7809,71.6309 Q1150.1227,71.7122 1150.4156,71.8669 L1150.4156,73.2829 Q1150.0901,72.9818 1149.7809,72.8434 Q1149.4716,72.6969 1149.1461,72.6969 Q1148.4462,72.6969 1148.0882,73.2585 Q1147.7301,73.8118 1147.7301,74.9023 Q1147.7301,75.9928 1148.0882,76.5544 Q1148.4462,77.1077 1149.1461,77.1077 Q1149.4716,77.1077 1149.7809,76.9694 Q1150.0901,76.8229 1150.4156,76.5218 L1150.4156,77.9378 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="80.1264" x="1159.5465" y="77.5243">ThreadSauvegardePIF</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1065.1302" x2="1317.1622" y1="83.3333" y2="83.3333"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="45.1884" x="1067.7344" y="92.185">-fichier : File</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1065.1302" x2="1317.1622" y1="95.988" y2="95.988"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="246.8236" x="1067.7344" y="104.8396">+ThreadSauvegardePIF(controleur:ConverterController, fichier:File)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="46.5627" x="1067.7344" y="113.3275">+run() : void</text></g><!--class Convertisseur--><g class="entity" data-qualified-name="fr.iutfbleau.sae.Convertisseur" data-source-line="216" id="ent0044"><rect fill="#F1F1F1" height="33.488" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="104.5914" x="1824.2656" y="75.1562"/><ellipse cx="1849.0673" cy="83.4896" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1850.6135,86.4274 Q1850.3124,86.582 1849.9787,86.6553 Q1849.6451,86.7367 1849.2788,86.7367 Q1847.9768,86.7367 1847.285,85.8822 Q1846.6014,85.0195 1846.6014,83.3919 Q1846.6014,81.7643 1847.285,80.9017 Q1847.9768,80.0391 1849.2788,80.0391 Q1849.6451,80.0391 1849.9787,80.1204 Q1850.3205,80.2018 1850.6135,80.3564 L1850.6135,81.7725 Q1850.288,81.4714 1849.9787,81.333 Q1849.6695,81.1865 1849.344,81.1865 Q1848.6441,81.1865 1848.286,81.748 Q1847.9279,82.3014 1847.9279,83.3919 Q1847.9279,84.4824 1848.286,85.0439 Q1848.6441,85.5973 1849.344,85.5973 Q1849.6695,85.5973 1849.9787,85.459 Q1850.288,85.3125 1850.6135,85.0114 L1850.6135,86.4274 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="50.561" x="1859.7443" y="86.0139">Convertisseur</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1824.7865" x2="1928.3362" y1="91.8229" y2="91.8229"/><line style="stroke:#181818;stroke-width:0.2604;" x1="1824.7865" x2="1928.3362" y1="95.9896" y2="95.9896"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="98.3414" x="1827.3906" y="104.8412">+main(args:String[]) : void</text></g><!--class GestionErreur--><g class="entity" data-qualified-name="fr.iutfbleau.sae.GestionErreur" data-source-line="220" id="ent0045"><rect fill="#F1F1F1" height="41.9759" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="148.0103" x="2448.9115" y="70.9115"/><ellipse cx="2495.3976" cy="79.2448" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M2496.9438,82.1826 Q2496.6427,82.3372 2496.3091,82.4105 Q2495.9754,82.4919 2495.6092,82.4919 Q2494.3071,82.4919 2493.6154,81.6374 Q2492.9318,80.7747 2492.9318,79.1471 Q2492.9318,77.5195 2493.6154,76.6569 Q2494.3071,75.7943 2495.6092,75.7943 Q2495.9754,75.7943 2496.3091,75.8757 Q2496.6509,75.957 2496.9438,76.1117 L2496.9438,77.5277 Q2496.6183,77.2266 2496.3091,77.0882 Q2495.9998,76.9417 2495.6743,76.9417 Q2494.9744,76.9417 2494.6164,77.5033 Q2494.2583,78.0566 2494.2583,79.1471 Q2494.2583,80.2376 2494.6164,80.7992 Q2494.9744,81.3525 2495.6743,81.3525 Q2495.9998,81.3525 2496.3091,81.2142 Q2496.6183,81.0677 2496.9438,80.7666 L2496.9438,82.1826 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="50.6109" x="2506.0747" y="81.7691">GestionErreur</text><line style="stroke:#181818;stroke-width:0.2604;" x1="2449.4323" x2="2596.4009" y1="87.5781" y2="87.5781"/><line style="stroke:#181818;stroke-width:0.2604;" x1="2449.4323" x2="2596.4009" y1="91.7448" y2="91.7448"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" text-decoration="underline" textLength="141.7603" x="2452.0365" y="100.5964">+afficherErreur(message:String) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" text-decoration="underline" textLength="132.8522" x="2452.0365" y="109.0844">+afficherInfo(message:String) : void</text></g><!--class CanonicalCode--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.CanonicalCode" data-source-line="11" id="ent0003"><rect fill="#F1F1F1" height="50.4639" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="296.3786" x="72.125" y="390.4583"/><ellipse cx="190.8709" cy="398.7917" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M192.4172,401.7295 Q192.116,401.8841 191.7824,401.9574 Q191.4487,402.0387 191.0825,402.0387 Q189.7804,402.0387 189.0887,401.1842 Q188.4051,400.3216 188.4051,398.694 Q188.4051,397.0664 189.0887,396.2038 Q189.7804,395.3411 191.0825,395.3411 Q191.4487,395.3411 191.7824,395.4225 Q192.1242,395.5039 192.4172,395.6585 L192.4172,397.0745 Q192.0916,396.7734 191.7824,396.6351 Q191.4731,396.4886 191.1476,396.4886 Q190.4478,396.4886 190.0897,397.0501 Q189.7316,397.6035 189.7316,398.694 Q189.7316,399.7845 190.0897,400.346 Q190.4478,400.8994 191.1476,400.8994 Q191.4731,400.8994 191.7824,400.7611 Q192.0916,400.6146 192.4172,400.3135 L192.4172,401.7295 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="54.4596" x="201.548" y="401.316">CanonicalCode</text><line style="stroke:#181818;stroke-width:0.2604;" x1="72.6458" x2="367.9827" y1="407.125" y2="407.125"/><line style="stroke:#181818;stroke-width:0.2604;" x1="72.6458" x2="367.9827" y1="411.2917" y2="411.2917"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="290.1286" x="75.25" y="420.1433">+generateCodes(codesHuffman : Map<Integer,String>) : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="254.628" x="75.25" y="428.6312">+getCode(canonicalCodes : Map<Integer,String>, value : int) : String</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="218.6752" x="75.25" y="437.1192">+getLength(codesH : Map<Integer,String>, value : int) : int</text></g><!--class ComparateurCanonique--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.ComparateurCanonique" data-source-line="17" id="ent0007"><rect fill="#F1F1F1" height="33.488" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="342.0405" x="49.2917" y="544.6875"/><ellipse cx="174.4944" cy="553.0208" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M176.0406,555.9587 Q175.7395,556.1133 175.4058,556.1865 Q175.0722,556.2679 174.7059,556.2679 Q173.4039,556.2679 172.7121,555.4134 Q172.0285,554.5508 172.0285,552.9232 Q172.0285,551.2956 172.7121,550.4329 Q173.4039,549.5703 174.7059,549.5703 Q175.0722,549.5703 175.4058,549.6517 Q175.7476,549.7331 176.0406,549.8877 L176.0406,551.3037 Q175.7151,551.0026 175.4058,550.8643 Q175.0966,550.7178 174.771,550.7178 Q174.0712,550.7178 173.7131,551.2793 Q173.355,551.8327 173.355,552.9232 Q173.355,554.0137 173.7131,554.5752 Q174.0712,555.1286 174.771,555.1286 Q175.0966,555.1286 175.4058,554.9902 Q175.7151,554.8438 176.0406,554.5426 L176.0406,555.9587 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="87.208" x="185.1714" y="555.5451">ComparateurCanonique</text><line style="stroke:#181818;stroke-width:0.2604;" x1="49.8125" x2="390.8113" y1="561.3542" y2="561.3542"/><line style="stroke:#181818;stroke-width:0.2604;" x1="49.8125" x2="390.8113" y1="565.5208" y2="565.5208"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="335.7905" x="52.4167" y="574.3725">+compare(entree1 : Map.Entry<Integer,String>, entree2 : Map.Entry<Integer,String>) : int</text></g><!--class ComparateurHuffmanNode--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.ComparateurHuffmanNode" data-source-line="21" id="ent0008"><rect fill="#F1F1F1" height="33.488" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="195.6411" x="702.6979" y="544.6875"/><ellipse cx="748.9829" cy="553.0208" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M750.5291,555.9587 Q750.228,556.1133 749.8944,556.1865 Q749.5607,556.2679 749.1945,556.2679 Q747.8924,556.2679 747.2007,555.4134 Q746.5171,554.5508 746.5171,552.9232 Q746.5171,551.2956 747.2007,550.4329 Q747.8924,549.5703 749.1945,549.5703 Q749.5607,549.5703 749.8944,549.6517 Q750.2362,549.7331 750.5291,549.8877 L750.5291,551.3037 Q750.2036,551.0026 749.8944,550.8643 Q749.5851,550.7178 749.2596,550.7178 Q748.5597,550.7178 748.2017,551.2793 Q747.8436,551.8327 747.8436,552.9232 Q747.8436,554.0137 748.2017,554.5752 Q748.5597,555.1286 749.2596,555.1286 Q749.5851,555.1286 749.8944,554.9902 Q750.2036,554.8438 750.5291,554.5426 L750.5291,555.9587 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="98.644" x="759.66" y="555.5451">ComparateurHuffmanNode</text><line style="stroke:#181818;stroke-width:0.2604;" x1="703.2188" x2="897.8182" y1="561.3542" y2="561.3542"/><line style="stroke:#181818;stroke-width:0.2604;" x1="703.2188" x2="897.8182" y1="565.5208" y2="565.5208"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="189.3911" x="705.8229" y="574.3725">+compare(a : HuffmanNode, b : HuffmanNode) : int</text></g><!--class FrequencyTable--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.FrequencyTable" data-source-line="25" id="ent0009"><rect fill="#F1F1F1" height="92.9036" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="173.7376" x="723.026" y="369.2396"/><ellipse cx="778.4701" cy="377.5729" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M780.0163,380.5107 Q779.7152,380.6654 779.3816,380.7386 Q779.0479,380.82 778.6817,380.82 Q777.3796,380.82 776.6879,379.9655 Q776.0043,379.1029 776.0043,377.4753 Q776.0043,375.8477 776.6879,374.985 Q777.3796,374.1224 778.6817,374.1224 Q779.0479,374.1224 779.3816,374.2038 Q779.7234,374.2852 780.0163,374.4398 L780.0163,375.8558 Q779.6908,375.5547 779.3816,375.4163 Q779.0723,375.2699 778.7468,375.2699 Q778.0469,375.2699 777.6889,375.8314 Q777.3308,376.3848 777.3308,377.4753 Q777.3308,378.5658 777.6889,379.1273 Q778.0469,379.6807 778.7468,379.6807 Q779.0723,379.6807 779.3816,379.5423 Q779.6908,379.3958 780.0163,379.0947 L780.0163,380.5107 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="58.4223" x="789.1472" y="380.0972">FrequencyTable</text><line style="stroke:#181818;stroke-width:0.2604;" x1="723.5469" x2="896.2428" y1="385.9063" y2="385.9063"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="44.665" x="726.151" y="394.7579">-freqR : int[]</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="45.2489" x="726.151" y="403.2458">-freqG : int[]</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="44.6009" x="726.151" y="411.7338">-freqB : int[]</text><line style="stroke:#181818;stroke-width:0.2604;" x1="723.5469" x2="896.2428" y1="415.5368" y2="415.5368"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="70.2215" x="726.151" y="424.3884">+FrequencyTable()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="167.4876" x="726.151" y="432.8764">+computeFromImage(img : RGBImage) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="60.2417" x="726.151" y="441.3643">+getRed() : int[]</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="68.3024" x="726.151" y="449.8523">+getGreen() : int[]</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="62.1964" x="726.151" y="458.3402">+getBlue() : int[]</text></g><!--class HuffmanNode--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.HuffmanNode" data-source-line="36" id="ent0010"><rect fill="#F1F1F1" height="92.9036" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="217.3238" x="409.5677" y="514.9792"/><ellipse cx="490.7854" cy="523.3125" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M492.3316,526.2503 Q492.0305,526.4049 491.6969,526.4782 Q491.3632,526.5596 490.997,526.5596 Q489.6949,526.5596 489.0032,525.7051 Q488.3196,524.8424 488.3196,523.2148 Q488.3196,521.5872 489.0032,520.7246 Q489.6949,519.862 490.997,519.862 Q491.3632,519.862 491.6969,519.9434 Q492.0387,520.0247 492.3316,520.1794 L492.3316,521.5954 Q492.0061,521.2943 491.6969,521.1559 Q491.3876,521.0094 491.0621,521.0094 Q490.3622,521.0094 490.0042,521.571 Q489.6461,522.1243 489.6461,523.2148 Q489.6461,524.3053 490.0042,524.8669 Q490.3622,525.4202 491.0621,525.4202 Q491.3876,525.4202 491.6969,525.2819 Q492.0061,525.1354 492.3316,524.8343 L492.3316,526.2503 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="50.4613" x="501.4625" y="525.8368">HuffmanNode</text><line style="stroke:#181818;stroke-width:0.2604;" x1="410.0885" x2="626.3707" y1="531.6458" y2="531.6458"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="39.1464" x="412.6927" y="540.4975">-value : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="56.133" x="412.6927" y="548.9854">-frequence : int</text><line style="stroke:#181818;stroke-width:0.2604;" x1="410.0885" x2="626.3707" y1="552.7884" y2="552.7884"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="156.9132" x="412.6927" y="561.64">+HuffmanNode(value : int, frequence : int)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="211.0738" x="412.6927" y="570.128">+HuffmanNode(left : HuffmanNode, right : HuffmanNode)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="69.4524" x="412.6927" y="578.6159">+isLeaf() : boolean</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="78.9017" x="412.6927" y="587.1039">+getFrequence() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="60.9609" x="412.6927" y="595.5919">+getValue() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="69.7337" x="412.6927" y="604.0798">+toString() : String</text></g><!--class HuffmanTree--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.HuffmanTree" data-source-line="47" id="ent0011"><rect fill="#F1F1F1" height="67.4398" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="158.5561" x="501.4531" y="381.974"/><ellipse cx="554.5901" cy="390.3073" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M556.1363,393.2451 Q555.8352,393.3997 555.5015,393.473 Q555.1679,393.5544 554.8017,393.5544 Q553.4996,393.5544 552.8079,392.6999 Q552.1243,391.8372 552.1243,390.2096 Q552.1243,388.582 552.8079,387.7194 Q553.4996,386.8568 554.8017,386.8568 Q555.1679,386.8568 555.5015,386.9382 Q555.8433,387.0195 556.1363,387.1742 L556.1363,388.5902 Q555.8108,388.2891 555.5015,388.1507 Q555.1923,388.0042 554.8668,388.0042 Q554.1669,388.0042 553.8088,388.5658 Q553.4508,389.1191 553.4508,390.2096 Q553.4508,391.3001 553.8088,391.8617 Q554.1669,392.415 554.8668,392.415 Q555.1923,392.415 555.5015,392.2767 Q555.8108,392.1302 556.1363,391.8291 L556.1363,393.2451 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="47.8551" x="565.2672" y="392.8316">HuffmanTree</text><line style="stroke:#181818;stroke-width:0.2604;" x1="501.974" x2="659.4884" y1="398.6406" y2="398.6406"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="109.0225" x="504.5781" y="407.4922">-codes : Map<Integer,String></text><line style="stroke:#181818;stroke-width:0.2604;" x1="501.974" x2="659.4884" y1="411.2952" y2="411.2952"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="96.6217" x="504.5781" y="420.1469">+HuffmanTree(freq : int[])</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="152.3061" x="504.5781" y="428.6348">+generateCodes() : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="131.2464" x="504.5781" y="437.1228">+getCodes() : Map<Integer,String></text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="98.174" x="504.5781" y="445.6107">+getRoot() : HuffmanNode</text></g><!--class Comparator--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mhuffman.Comparator" data-source-line="55" id="ent0012"><rect fill="#F1F1F1" height="25" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="60.203" x="480.3177" y="703.1615"/><ellipse cx="488.1302" cy="711.4948" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M489.6764,714.4326 Q489.3753,714.5872 489.0417,714.6605 Q488.708,714.7419 488.3418,714.7419 Q487.0397,714.7419 486.348,713.8874 Q485.6644,713.0247 485.6644,711.3971 Q485.6644,709.7695 486.348,708.9069 Q487.0397,708.0443 488.3418,708.0443 Q488.708,708.0443 489.0417,708.1257 Q489.3835,708.207 489.6764,708.3617 L489.6764,709.7777 Q489.3509,709.4766 489.0417,709.3382 Q488.7324,709.1917 488.4069,709.1917 Q487.707,709.1917 487.349,709.7533 Q486.9909,710.3066 486.9909,711.3971 Q486.9909,712.4876 487.349,713.0492 Q487.707,713.6025 488.4069,713.6025 Q488.7324,713.6025 489.0417,713.4642 Q489.3509,713.3177 489.6764,713.0166 L489.6764,714.4326 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="43.5364" x="495.4219" y="714.0191">Comparator</text><line style="stroke:#181818;stroke-width:0.2604;" x1="480.8385" x2="539.9999" y1="719.8281" y2="719.8281"/><line style="stroke:#181818;stroke-width:0.2604;" x1="480.8385" x2="539.9999" y1="723.9948" y2="723.9948"/></g><!--class Pixel--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.Pixel" data-source-line="71" id="ent0021"><rect fill="#F1F1F1" height="109.8796" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="129.5532" x="976.3698" y="660.7188"/><ellipse cx="1030.3078" cy="669.0521" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1031.8541,671.9899 Q1031.5529,672.1445 1031.2193,672.2178 Q1030.8856,672.2992 1030.5194,672.2992 Q1029.2173,672.2992 1028.5256,671.4447 Q1027.842,670.582 1027.842,668.9544 Q1027.842,667.3268 1028.5256,666.4642 Q1029.2173,665.6016 1030.5194,665.6016 Q1030.8856,665.6016 1031.2193,665.6829 Q1031.5611,665.7643 1031.8541,665.9189 L1031.8541,667.335 Q1031.5285,667.0339 1031.2193,666.8955 Q1030.91,666.749 1030.5845,666.749 Q1029.8847,666.749 1029.5266,667.3105 Q1029.1685,667.8639 1029.1685,668.9544 Q1029.1685,670.0449 1029.5266,670.6064 Q1029.8847,671.1598 1030.5845,671.1598 Q1030.91,671.1598 1031.2193,671.0215 Q1031.5285,670.875 1031.8541,670.5739 L1031.8541,671.9899 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="17.2501" x="1040.9849" y="671.5764">Pixel</text><line style="stroke:#181818;stroke-width:0.2604;" x1="976.8906" x2="1105.4022" y1="677.3854" y2="677.3854"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="22.2275" x="979.4948" y="686.237">-r : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="23.8581" x="979.4948" y="694.725">-g : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="23.8581" x="979.4948" y="703.213">-b : int</text><line style="stroke:#181818;stroke-width:0.2604;" x1="976.8906" x2="1105.4022" y1="707.016" y2="707.016"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="123.3032" x="979.4948" y="715.8676">+Pixel(red:int, green:int, blue:int)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="45.4376" x="979.4948" y="724.3555">+getR() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="46.0215" x="979.4948" y="732.8435">+getG() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="45.3735" x="979.4948" y="741.3314">+getB() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="65.4933" x="979.4948" y="749.8194">+setR(r:int) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="67.7078" x="979.4948" y="758.3074">+setG(g:int) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="67.0598" x="979.4948" y="766.7953">+setB(b:int) : void</text></g><!--class RGBImage--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.RGBImage" data-source-line="84" id="ent0022"><rect fill="#F1F1F1" height="84.4157" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="135.1288" x="973.5833" y="519.224"/><ellipse cx="1019.6565" cy="527.5573" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1021.2027,530.4951 Q1020.9016,530.6497 1020.5679,530.723 Q1020.2343,530.8044 1019.8681,530.8044 Q1018.566,530.8044 1017.8743,529.9499 Q1017.1907,529.0872 1017.1907,527.4596 Q1017.1907,525.832 1017.8743,524.9694 Q1018.566,524.1068 1019.8681,524.1068 Q1020.2343,524.1068 1020.5679,524.1882 Q1020.9097,524.2695 1021.2027,524.4242 L1021.2027,525.8402 Q1020.8772,525.5391 1020.5679,525.4007 Q1020.2587,525.2542 1019.9332,525.2542 Q1019.2333,525.2542 1018.8752,525.8158 Q1018.5172,526.3691 1018.5172,527.4596 Q1018.5172,528.5501 1018.8752,529.1117 Q1019.2333,529.665 1019.9332,529.665 Q1020.2587,529.665 1020.5679,529.5267 Q1020.8772,529.3802 1021.2027,529.0791 L1021.2027,530.4951 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="38.5554" x="1030.3336" y="530.0816">RGBImage</text><line style="stroke:#181818;stroke-width:0.2604;" x1="974.1042" x2="1108.1913" y1="535.8906" y2="535.8906"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="39.328" x="976.7083" y="544.7422">-width : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="42.4718" x="976.7083" y="553.2302">-height : int</text><line style="stroke:#181818;stroke-width:0.2604;" x1="974.1042" x2="1108.1913" y1="557.0332" y2="557.0332"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="104.9779" x="976.7083" y="565.8848">+RGBImage(lar:int, haut:int)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="61.7157" x="976.7083" y="574.3728">+getWidth() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="64.475" x="976.7083" y="582.8607">+getHeight() : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="128.8788" x="976.7083" y="591.3487">+setPixel(x:int, y:int, p:Pixel) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="102.5569" x="976.7083" y="599.8366">+getPixel(x:int, y:int) : Pixel</text></g><!--class BitOutputStream--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.BitOutputStream" data-source-line="94" id="ent0023"><rect fill="#F1F1F1" height="101.3916" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="169.1233" x="1517.5208" y="510.7344"/><ellipse cx="1568.9897" cy="519.0677" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1570.536,522.0055 Q1570.2349,522.1602 1569.9012,522.2334 Q1569.5675,522.3148 1569.2013,522.3148 Q1567.8993,522.3148 1567.2075,521.4603 Q1566.5239,520.5977 1566.5239,518.9701 Q1566.5239,517.3424 1567.2075,516.4798 Q1567.8993,515.6172 1569.2013,515.6172 Q1569.5675,515.6172 1569.9012,515.6986 Q1570.243,515.7799 1570.536,515.9346 L1570.536,517.3506 Q1570.2104,517.0495 1569.9012,516.9111 Q1569.592,516.7646 1569.2664,516.7646 Q1568.5666,516.7646 1568.2085,517.3262 Q1567.8504,517.8796 1567.8504,518.9701 Q1567.8504,520.0605 1568.2085,520.6221 Q1568.5666,521.1755 1569.2664,521.1755 Q1569.592,521.1755 1569.9012,521.0371 Q1570.2104,520.8906 1570.536,520.5895 L1570.536,522.0055 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="61.7584" x="1579.6668" y="521.592">BitOutputStream</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1518.0417" x2="1686.1233" y1="527.401" y2="527.401"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="93.5598" x="1520.6458" y="536.2527">-octetEnConstruction : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="57.9987" x="1520.6458" y="544.7406">-positionBit : int</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="75.6724" x="1520.6458" y="553.2286">-fluxFerme : boolean</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1518.0417" x2="1686.1233" y1="557.0316" y2="557.0316"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="162.8733" x="1520.6458" y="565.8832">+BitOutputStream(fluxSortie:OutputStream)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="84.0179" x="1520.6458" y="574.3712">+writeBit(bit:int) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="159.8007" x="1520.6458" y="582.8591">+writeBits(valeur:int, nombreBits:int) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="151.7329" x="1520.6458" y="591.3471">+writeBitString(codeBinaire:String) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="51.9567" x="1520.6458" y="599.835">+flush() : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="74.1165" x="1520.6458" y="608.323">+fermerFlux() : void</text></g><!--class DecodeNode--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.DecodeNode" data-source-line="106" id="ent0024"><rect fill="#F1F1F1" height="58.9518" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="250.0544" x="973.4115" y="386.2135"/><ellipse cx="1072.8672" cy="394.5469" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1074.4135,397.4847 Q1074.1123,397.6393 1073.7787,397.7126 Q1073.445,397.7939 1073.0788,397.7939 Q1071.7767,397.7939 1071.085,396.9395 Q1070.4014,396.0768 1070.4014,394.4492 Q1070.4014,392.8216 1071.085,391.959 Q1071.7767,391.0964 1073.0788,391.0964 Q1073.445,391.0964 1073.7787,391.1777 Q1074.1205,391.2591 1074.4135,391.4137 L1074.4135,392.8298 Q1074.0879,392.5286 1073.7787,392.3903 Q1073.4694,392.2438 1073.1439,392.2438 Q1072.4441,392.2438 1072.086,392.8053 Q1071.7279,393.3587 1071.7279,394.4492 Q1071.7279,395.5397 1072.086,396.1012 Q1072.4441,396.6546 1073.1439,396.6546 Q1073.4694,396.6546 1073.7787,396.5163 Q1074.0879,396.3698 1074.4135,396.0687 L1074.4135,397.4847 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="46.7158" x="1083.5443" y="397.0712">DecodeNode</text><line style="stroke:#181818;stroke-width:0.2604;" x1="973.9323" x2="1222.945" y1="402.8802" y2="402.8802"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="59.348" x="976.5365" y="411.7318">+value : Integer</text><line style="stroke:#181818;stroke-width:0.2604;" x1="973.9323" x2="1222.945" y1="415.5348" y2="415.5348"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="58.5149" x="976.5365" y="424.3865">+DecodeNode()</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="243.8044" x="976.5365" y="432.8744">+DecodeNode(left:DecodeNode, right:DecodeNode, value:Integer)</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="69.4524" x="976.5365" y="441.3624">+isLeaf() : boolean</text></g><!--class PIFWriter--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.PIFWriter" data-source-line="113" id="ent0025"><rect fill="#F1F1F1" height="58.9518" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="604.8075" x="1299.6771" y="386.2135"/><ellipse cx="1583.2083" cy="394.5469" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1584.7545,397.4847 Q1584.4534,397.6393 1584.1197,397.7126 Q1583.7861,397.7939 1583.4199,397.7939 Q1582.1178,397.7939 1581.426,396.9395 Q1580.7425,396.0768 1580.7425,394.4492 Q1580.7425,392.8216 1581.426,391.959 Q1582.1178,391.0964 1583.4199,391.0964 Q1583.7861,391.0964 1584.1197,391.1777 Q1584.4615,391.2591 1584.7545,391.4137 L1584.7545,392.8298 Q1584.429,392.5286 1584.1197,392.3903 Q1583.8105,392.2438 1583.485,392.2438 Q1582.7851,392.2438 1582.427,392.8053 Q1582.0689,393.3587 1582.0689,394.4492 Q1582.0689,395.5397 1582.427,396.1012 Q1582.7851,396.6546 1583.485,396.6546 Q1583.8105,396.6546 1584.1197,396.5163 Q1584.429,396.3698 1584.7545,396.0687 L1584.7545,397.4847 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="33.3181" x="1593.8854" y="397.0712">PIFWriter</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1300.1979" x2="1903.9638" y1="402.8802" y2="402.8802"/><line style="stroke:#181818;stroke-width:0.2604;" x1="1300.1979" x2="1903.9638" y1="407.0469" y2="407.0469"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="523.8536" x="1302.8021" y="415.8985">+writeTOFile(filepath:String,image:RGBImage,canonR:Map<Integer,String>,canonG:Map<Integer,String>,canonB:Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="231.8985" x="1302.8021" y="424.3865">+writeHeader(out:BitOutputStream, width:int, height:int) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="483.0053" x="1302.8021" y="432.8744">+writeTables(out:BitOutputStream,canonR:Map<Integer,String>,canonG:Map<Integer,String>,canonB:Map<Integer,String>) : void</text><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="598.5575" x="1302.8021" y="441.3624">+encodePixels(out:BitOutputStream,image:RGBImage,canonRED:Map<Integer,String>,canonGREEN:Map<Integer,String>,canonBLUE:Map<Integer,String>) : void</text></g><!--class OutputStream--><g class="entity" data-qualified-name="fr.iutfbleau.sae.mpif.OutputStream" data-source-line="126" id="ent0031"><rect fill="#F1F1F1" height="25" rx="1.3021" ry="1.3021" style="stroke:#181818;stroke-width:0.2604;" width="68.5379" x="1567.8125" y="703.1615"/><ellipse cx="1575.625" cy="711.4948" fill="#ADD1B2" rx="5.7292" ry="5.7292" style="stroke:#181818;stroke-width:0.5208;"/><path d="M1577.1712,714.4326 Q1576.8701,714.5872 1576.5365,714.6605 Q1576.2028,714.7419 1575.8366,714.7419 Q1574.5345,714.7419 1573.8428,713.8874 Q1573.1592,713.0247 1573.1592,711.3971 Q1573.1592,709.7695 1573.8428,708.9069 Q1574.5345,708.0443 1575.8366,708.0443 Q1576.2028,708.0443 1576.5365,708.1257 Q1576.8783,708.207 1577.1712,708.3617 L1577.1712,709.7777 Q1576.8457,709.4766 1576.5365,709.3382 Q1576.2272,709.1917 1575.9017,709.1917 Q1575.2018,709.1917 1574.8438,709.7533 Q1574.4857,710.3066 1574.4857,711.3971 Q1574.4857,712.4876 1574.8438,713.0492 Q1575.2018,713.6025 1575.9017,713.6025 Q1576.2272,713.6025 1576.5365,713.4642 Q1576.8457,713.3177 1577.1712,713.0166 L1577.1712,714.4326 Z " fill="#000000"/><text fill="#000000" font-family="sans-serif" font-size="7.2917" lengthAdjust="spacing" textLength="51.8712" x="1582.9167" y="714.0191">OutputStream</text><line style="stroke:#181818;stroke-width:0.2604;" x1="1568.3333" x2="1635.8296" y1="719.8281" y2="719.8281"/><line style="stroke:#181818;stroke-width:0.2604;" x1="1568.3333" x2="1635.8296" y1="723.9948" y2="723.9948"/></g><!--link ComparateurCanonique to Comparator--><g class="link" data-entity-1="ent0007" data-entity-2="ent0012" data-link-type="extension" data-source-line="55" id="lnk13"><path codeLine="55" d="M251.4948,578.4167 C310.1042,609.3646 427.1629,671.1745 478.9754,698.5339" fill="none" id="ComparateurCanonique-to-Comparator" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="none" points="487.2656,702.9115,480.4346,695.7705,477.5162,701.2973,487.2656,702.9115" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ComparateurHuffmanNode to Comparator--><g class="link" data-entity-1="ent0008" data-entity-2="ent0012" data-link-type="extension" data-source-line="56" id="lnk14"><path codeLine="56" d="M771.1771,578.349 C749.7917,590.2292 720.0729,606.599 693.75,620.6146 C637.0104,650.8229 578.066,680.9035 542.9097,698.716" fill="none" id="ComparateurHuffmanNode-to-Comparator" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="none" points="534.5469,702.9531,544.3221,701.5036,541.4973,695.9283,534.5469,702.9531" style="stroke:#181818;stroke-width:0.5208;"/></g><!--reverse link HuffmanTree to HuffmanNode--><g class="link" data-entity-1="ent0011" data-entity-2="ent0010" data-link-type="composition" data-source-line="58" id="lnk15"><path codeLine="58" d="M563.8341,455.3262 C555.4695,474.6907 547.2917,493.625 538.1354,514.8177" fill="none" id="HuffmanTree-backto-HuffmanNode" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="566.3125,449.5885,563.1608,451.6312,563.8341,455.3262,566.9858,453.2835,566.3125,449.5885" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="13.7235" x="553.6458" y="484.5765">root</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="560.4513" y="459.7752">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="535.3946" y="509.267">1</text></g><!--reverse link HuffmanNode to HuffmanNode--><g class="link" data-entity-1="ent0010" data-entity-2="ent0010" data-link-type="aggregation" data-source-line="59" id="lnk16"><path codeLine="59" d="M633.1923,556.0009 C644.2652,557.2093 645.1198,558.5677 645.1198,561.4323 C645.1198,564.2969 638.0521,566.3281 626.9792,567.5365" fill="none" id="HuffmanNode-backto-HuffmanNode" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="626.9792,555.3229,629.8597,557.733,633.1923,556.0009,630.3117,553.5909,626.9792,555.3229" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="11.0853" x="648.2448" y="563.8109">left</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="630.9648" y="553.4366">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="12.9201" x="631.1195" y="566.0891">0..1</text></g><!--reverse link HuffmanNode to HuffmanNode--><g class="link" data-entity-1="ent0010" data-entity-2="ent0010" data-link-type="aggregation" data-source-line="60" id="lnk17"><path codeLine="60" d="M633.3145,547.7195 C654.5228,549.3705 663.349,553.6146 663.349,561.4323 C663.349,569.2448 648.2917,573.9792 627.0833,575.625" fill="none" id="HuffmanNode-backto-HuffmanNode-1" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="627.0833,547.2344,630.0372,549.554,633.3145,547.7195,630.3606,545.3999,627.0833,547.2344" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="15.9088" x="666.474" y="563.8109">right</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="631.0727" y="545.0574">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="12.9201" x="631.2274" y="574.4683">0..1</text></g><!--link HuffmanTree to ComparateurHuffmanNode--><g class="link" data-entity-1="ent0011" data-entity-2="ent0008" data-link-type="dependency" data-source-line="62" id="lnk18"><path codeLine="62" d="M631.4323,449.5885 C676.5625,479.3021 738.0722,519.7972 772.9524,542.7608" fill="none" id="HuffmanTree-to-ComparateurHuffmanNode" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="#181818" points="775.5625,544.4792,772.7929,540.1615,773.3874,543.0472,770.5017,543.6417,775.5625,544.4792" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link CanonicalCode to ComparateurCanonique--><g class="link" data-entity-1="ent0003" data-entity-2="ent0007" data-link-type="dependency" data-source-line="63" id="lnk19"><path codeLine="63" d="M220.3125,441.0885 C220.3125,470.6615 220.3125,516.0573 220.3125,541.3281" fill="none" id="CanonicalCode-to-ComparateurCanonique" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="#181818" points="220.3125,544.4531,222.3958,539.7656,220.3125,541.849,218.2292,539.7656,220.3125,544.4531" style="stroke:#181818;stroke-width:0.5208;"/></g><!--reverse link RGBImage to Pixel--><g class="link" data-entity-1="ent0022" data-entity-2="ent0021" data-link-type="composition" data-source-line="120" id="lnk26"><path codeLine="120" d="M1041.1458,610.0625 C1041.1458,627.5573 1041.1458,641.8698 1041.1458,660.5313" fill="none" id="RGBImage-backto-Pixel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1041.1458,603.8125,1039.0625,606.9375,1041.1458,610.0625,1043.2292,606.9375,1041.1458,603.8125" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="19.7604" x="1041.6667" y="643.0453">pixels</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1036.806" y="614.0781">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="3.3854" x="1037.9246" y="655.0396">*</text></g><!--reverse link DecodeNode to DecodeNode--><g class="link" data-entity-1="ent0024" data-entity-2="ent0024" data-link-type="aggregation" data-source-line="121" id="lnk27"><path codeLine="121" d="M1229.9054,411.3608 C1240.9783,412.3921 1241.6927,413.4531 1241.6927,415.6927 C1241.6927,417.9323 1234.7552,419.5677 1223.6823,420.6042" fill="none" id="DecodeNode-backto-DecodeNode" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="1223.6823,410.7813,1226.6006,413.1454,1229.9054,411.3608,1226.987,408.9967,1223.6823,410.7813" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="11.0853" x="1244.8177" y="418.0713">left</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1227.4644" y="417.0374">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="12.9201" x="1227.5922" y="427.1519">0..1</text></g><!--reverse link DecodeNode to DecodeNode--><g class="link" data-entity-1="ent0024" data-entity-2="ent0024" data-link-type="aggregation" data-source-line="122" id="lnk28"><path codeLine="122" d="M1229.9308,404.5147 C1251.3318,406.1033 1259.9219,409.5208 1259.9219,415.6927 C1259.9219,421.8594 1245.099,425.7396 1223.6979,427.3333" fill="none" id="DecodeNode-backto-DecodeNode-1" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="1223.6979,404.0521,1226.6601,406.361,1229.9308,404.5147,1226.9686,402.2058,1223.6979,404.0521" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="15.9088" x="1263.0469" y="418.0713">right</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1227.4805" y="402.064">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="12.9201" x="1227.6083" y="434.0808">0..1</text></g><!--link PIFWriter to RGBImage--><g class="link" data-entity-1="ent0025" data-entity-2="ent0022" data-link-type="dependency" data-source-line="124" id="lnk29"><path codeLine="124" d="M1488.9063,445.4063 C1374.974,474.7969 1206.0311,518.3756 1111.8124,542.6829" fill="none" id="PIFWriter-to-RGBImage" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="#181818" points="1108.7865,543.4635,1113.8458,544.3098,1111.3081,542.813,1112.8049,540.2753,1108.7865,543.4635" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link PIFWriter to BitOutputStream--><g class="link" data-entity-1="ent0025" data-entity-2="ent0023" data-link-type="dependency" data-source-line="125" id="lnk30"><path codeLine="125" d="M1602.0833,445.3177 C1602.0833,464.0104 1602.0833,485.6615 1602.0833,507.4792" fill="none" id="PIFWriter-to-BitOutputStream" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="#181818" points="1602.0833,510.6042,1604.1667,505.9167,1602.0833,508,1600,505.9167,1602.0833,510.6042" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link BitOutputStream to OutputStream--><g class="link" data-entity-1="ent0023" data-entity-2="ent0031" data-link-type="dependency" data-source-line="126" id="lnk32"><path codeLine="126" d="M1602.0833,612.3229 C1602.0833,644.4115 1602.0833,680.3646 1602.0833,699.8073" fill="none" id="BitOutputStream-to-OutputStream" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1602.0833,702.9323,1604.1667,698.2448,1602.0833,700.3281,1600,698.2448,1602.0833,702.9323" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link FrequencyTable to RGBImage--><g class="link" data-entity-1="ent0009" data-entity-2="ent0022" data-link-type="dependency" data-source-line="129" id="lnk33"><path codeLine="129" d="M845.6042,462.3073 C853.7813,471.0885 862.8854,479.6927 872.3958,486.625 C873.5625,487.474 924.1323,509.6993 970.5542,530.0327" fill="none" id="FrequencyTable-to-RGBImage" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="#181818" points="973.4167,531.2865,969.9588,527.4975,971.0313,530.2416,968.2871,531.3141,973.4167,531.2865" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link Convertisseur to ConverterWindow--><g class="link" data-entity-1="ent0044" data-entity-2="ent0038" data-link-type="dependency" data-source-line="225" id="lnk46"><path codeLine="225" d="M1888.349,108.8698 C1922.4948,156.526 2020.5653,293.4025 2072.9976,366.5796" fill="none" id="Convertisseur-to-ConverterWindow" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="2074.8177,369.1198,2073.781,364.096,2073.3009,367.0029,2070.394,366.5228,2074.8177,369.1198" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link Convertisseur to ConverterController--><g class="link" data-entity-1="ent0044" data-entity-2="ent0037" data-link-type="dependency" data-source-line="226" id="lnk47"><path codeLine="226" d="M1824.0938,102.875 C1712.7708,125.0573 1453.3981,176.7332 1297.1429,207.8634" fill="none" id="Convertisseur-to-ConverterController" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1294.0781,208.474,1299.0823,209.6013,1296.6321,207.9651,1298.2682,205.5149,1294.0781,208.474" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ConverterController to RGBImage--><g class="link" data-entity-1="ent0037" data-entity-2="ent0022" data-link-type="dependency" data-source-line="228" id="lnk48"><path codeLine="228" d="M1047.5885,310.375 C1042.1198,313.1146 1036.6563,315.7396 1031.25,318.1979 C993.401,335.4115 966.6771,313.2396 942.1875,346.8438 C912.0052,388.2552 922.5521,414.8073 942.1875,462.1458 C951.1875,483.8333 965.233,501.1053 982.0716,516.85" fill="none" id="ConverterController-to-RGBImage" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="984.3542,518.9844,982.3532,514.2611,982.452,517.2058,979.5074,517.3046,984.3542,518.9844" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="21.0894" x="942.7083" y="418.0713">image</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1039.3118" y="319.31">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="975.1338" y="513.4762">1</text></g><!--link ConverterController to FrequencyTable--><g class="link" data-entity-1="ent0037" data-entity-2="ent0009" data-link-type="dependency" data-source-line="229" id="lnk49"><path codeLine="229" d="M1047.5625,312.1042 C1042.1354,314.3438 1036.6875,316.3906 1031.25,318.1979 C965.026,340.2188 936.3229,300.5 875,333.8229 C859.8229,342.0729 848.7855,352.9876 838.5616,366.5709" fill="none" id="ConverterController-to-FrequencyTable" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="836.6823,369.0677,841.1657,366.5754,838.2484,366.9871,837.8367,364.0697,836.6823,369.0677" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="52.7384" x="875.5208" y="340.6286">frequencyTable</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1039.2849" y="313.0271">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="834.4899" y="363.5162">1</text></g><!--link ConverterController to ConverterWindow--><g class="link" data-entity-1="ent0037" data-entity-2="ent0038" data-link-type="dependency" data-source-line="230" id="lnk50"><path codeLine="230" d="M1294.026,245.6771 C1442.4115,261.2812 1698.5,293.4219 1913.0208,346.8438 C1937.4063,352.9167 1960.0912,359.7923 1984.4714,368.0214" fill="none" id="ConverterController-to-ConverterWindow" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1987.4323,369.0208,1983.6572,365.5478,1984.9649,368.188,1982.3247,369.4957,1987.4323,369.0208" style="stroke:#181818;stroke-width:0.5208;"/><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="10.8406" x="1893.75" y="340.6286">fen</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1298.1389" y="244.4203">1</text><text fill="#000000" font-family="sans-serif" font-size="6.7708" lengthAdjust="spacing" textLength="4.3078" x="1973.5126" y="363.4656">1</text></g><!--reverse link ConverterWindow to CodeTablePanel--><g class="link" data-entity-1="ent0038" data-entity-2="ent0039" data-link-type="composition" data-source-line="232" id="lnk51"><path codeLine="232" d="M2197.5701,465.3983 C2220.591,478.0077 2240.3646,488.8438 2264.4844,502.0625" fill="none" id="ConverterWindow-backto-CodeTablePanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="2192.0885,462.3958,2193.8285,465.7243,2197.5701,465.3983,2195.8302,462.0699,2192.0885,462.3958" style="stroke:#181818;stroke-width:0.5208;"/></g><!--reverse link ConverterWindow to FrequencyTablePanel--><g class="link" data-entity-1="ent0038" data-entity-2="ent0040" data-link-type="composition" data-source-line="233" id="lnk52"><path codeLine="233" d="M2299.3562,437.0701 C2393.7677,450.294 2503.3125,470.3594 2603.6458,502.25 C2621.1719,507.8177 2639.3958,515.3906 2656.2969,523.2448" fill="none" id="ConverterWindow-backto-FrequencyTablePanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="2293.1667,436.2031,2295.9725,438.6998,2299.3562,437.0701,2296.5504,434.5734,2293.1667,436.2031" style="stroke:#181818;stroke-width:0.5208;"/></g><!--reverse link ConverterWindow to ImagePreviewPanel--><g class="link" data-entity-1="ent0038" data-entity-2="ent0041" data-link-type="composition" data-source-line="234" id="lnk53"><path codeLine="234" d="M2089.2569,468.2835 C2081.7153,489.4553 2075.0365,508.1979 2068.1458,527.5313" fill="none" id="ConverterWindow-backto-ImagePreviewPanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="2091.3542,462.3958,2088.343,464.6406,2089.2569,468.2835,2092.2681,466.0387,2091.3542,462.3958" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ExportButtonListener to ConverterController--><g class="link" data-entity-1="ent0042" data-entity-2="ent0037" data-link-type="dependency" data-source-line="236" id="lnk54"><path codeLine="236" d="M977.0156,113.0156 C996.1719,124.8802 1018.9108,138.959 1044.9942,155.11" fill="none" id="ExportButtonListener-to-ConverterController" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1047.651,156.7552,1044.7625,152.5162,1045.437,155.3842,1042.5689,156.0587,1047.651,156.7552" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ThreadSauvegardePIF to ConverterController--><g class="link" data-entity-1="ent0043" data-entity-2="ent0037" data-link-type="dependency" data-source-line="237" id="lnk55"><path codeLine="237" d="M1187.5625,117.2344 C1186.2396,126.3802 1185.1019,134.2351 1183.4509,145.6934" fill="none" id="ThreadSauvegardePIF-to-ConverterController" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="#181818" points="1183.0052,148.7865,1185.7358,144.444,1183.3766,146.2089,1181.6117,143.8498,1183.0052,148.7865" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link CodeTablePanel to JPanel--><g class="link" data-entity-1="ent0039" data-entity-2="ent0034" data-link-type="extension" data-source-line="239" id="lnk56"><path codeLine="239" d="M2371.875,620.7396 C2371.875,651.0313 2371.875,675.8802 2371.875,693.625" fill="none" id="CodeTablePanel-to-JPanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="2371.875,703,2375,693.625,2368.75,693.625,2371.875,703" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link FrequencyTablePanel to JPanel--><g class="link" data-entity-1="ent0040" data-entity-2="ent0034" data-link-type="extension" data-source-line="240" id="lnk57"><path codeLine="240" d="M2649.526,599.6302 C2634.3802,606.7552 2618.5729,614.0313 2603.6458,620.6146 C2525.8177,654.9479 2440.2399,688.6499 2400.1514,704.2072" fill="none" id="FrequencyTablePanel-to-JPanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="2391.4115,707.599,2401.282,707.1205,2399.0208,701.2939,2391.4115,707.599" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ImagePreviewPanel to JPanel--><g class="link" data-entity-1="ent0041" data-entity-2="ent0034" data-link-type="extension" data-source-line="241" id="lnk58"><path codeLine="241" d="M2100.1042,595.3802 C2112.6615,604.1823 2126.6094,613.2604 2140.1042,620.6146 C2215.0885,661.4688 2302.6168,692.3469 2343.3877,705.8625" fill="none" id="ImagePreviewPanel-to-JPanel" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="2352.2865,708.8125,2344.371,702.8963,2342.4044,708.8288,2352.2865,708.8125" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ConverterWindow to JFrame--><g class="link" data-entity-1="ent0038" data-entity-2="ent0035" data-link-type="extension" data-source-line="243" id="lnk59"><path codeLine="243" d="M2019.9948,462.3542 C2002.8958,473.8802 1986.0625,487.2865 1972.3958,502.25 C1959.8021,516.0365 1954.2693,527.2604 1949.5349,539.9844" fill="none" id="ConverterWindow-to-JFrame" style="stroke:#181818;stroke-width:0.5208;"/><polygon fill="none" points="1946.2656,548.7708,1952.4638,541.0741,1946.6061,538.8946,1946.2656,548.7708" style="stroke:#181818;stroke-width:0.5208;"/></g><!--link ExportButtonListener to ActionListener--><g class="link" data-entity-1="ent0042" data-entity-2="ent0036" data-link-type="extension" data-source-line="246" id="lnk60"><path codeLine="246" d="M943.75,113.0156 C943.75,141.0885 943.75,181.4323 943.75,207.1771" fill="none" id="ExportButtonListener-to-ActionListener" style="stroke:#181818;stroke-width:0.5208;stroke-dasharray:3.6458,3.6458;"/><polygon fill="none" points="943.75,216.5521,946.875,207.1771,940.625,207.1771,943.75,216.5521" style="stroke:#181818;stroke-width:0.5208;"/></g><!--SRC=[lHbhRzisy7j-1P4lanlRI0Ti68GrW9NQZhkqDHol6JOC0otJCb5Rz2ZAIVhuxpkIaanIbArYo_8XZk_5k-CzcUmZJNUOuosADpZB1a9mkiW5cSGilQEV2BeyoogI7Ou_ueJSYQSDGPp40gV9XXW4onr5FroUdPrzXrvzyq-T2Kq7rxyCnaEqNUUhrHQdg0LJcvCAGz3vYlTfBbQB3S5vFyEaNvvqZZwVdI7uKMv1rpXbAOtnvfej2Q1GyNEHa9HmB8Y4Pq4iVzyKkeReBTxzF4a5IGZlte5Zq-IgumUR0eMK5SJcYPcVgulsU9CJGD9KICaQRWcx9MaYreLcBSN0XvBnrN81syfB5YJdsXj_vvOdOeKd0Ka59-IbFge_X6zFzGCrqVV7YDeeKhZwdNCffIeOH1WaNRIm0Or7Z3W1wzBuQOuXD0pHlHLWPfhjZpzjyDWFZchW2rjyqB4rX-mRSRQTR2520xfDW7ysZjHNgV2UqQLrmpEo33hrGm0p1X-d3RW8Rjn1MIxmkxPdH8fjfhJ7HLmOGWA3iuiSZewVPKDMmhr2JfEr0pIuQNPBy4hPjM0CiZgrZ2uTNrbkOJzWmoS7Z60w8WCdmtpkceF7JNV5pSbRCrdo1j8nvQLqcifCsoBIZdB6c524XajD0xs9t-z_kQemZBk4PlIuf8hMzDVvotFqejTJdoPZY3YePf8hi2HZalootwzno93vDWuLK7Mb-lsh1eEqhLP3S8WhDvrz_QzQeTaCTtI5MZBzgrO8vpXjS4eVoSQCR-wMWiG5BDnqKZ82JfQXgWI9h57wpmMaNsXN0ncUtbmTUw5H7Pf92JmiEfjTF3Cf9sd4HS6YXhEIlYpBfaSUw5AiNIUiIL6rBDLAzc23kVR06kUYxe5xAT9hxusIwpLQk_bHottI7xjGGRrTf4uloHIqRdX4nVjSGAU2Ua9WxZFiPx4WOfXUipGJF8y5PQdhZHtBg8I3b5edsUIF8yAtn5V0dLC3INp7kA0aDE66ynuu5GJOWWKL_cikAJBPdo1rjVqfsowu0X_dAXg3hF8HJJ7b9DIWEWiec-bBTE3IMZu2KuBcG7jDv17kc5DsrAAu7n07SdEsCA2oIeQ7xqLNjI1AU5Y8FjrXBNMdaz6zz10tjLK-cxyVKPXuLl1hXyMwy5QNoZG8otpegjbt5lf6LOKQDwEYi67ezbpW3S5BmWC6EUU4LXUfD2wIKYNPaK1GKrpcbVFybi0q0_UbyjIlWjUtmzT7T9eDX- -Ew7Nxw_2aQaKuL0MoQl4lpeic4gATqbdH6V7jz6e3OpJtblH6Qp-4fEpLfLuUbEC-HU6Mkrxl2bb4-WndQx0EUfP90BeqUlNyau0p1BoPuhHe2WLW1Bk_zYKa2U4h37FzG9N-Mve9EReQTG0hn1J865I-PI0lIXCFzwJMRSsrBzqJ3kBX3y7PPcELbnvUb3FQxCJCQv2EsvD6fqZBn6f5ftAi5QLCjrE4JCNY5Al1mta3wD6q4NVXyMcmWd6iWj_JTCaUkd2lPQb6iiOKJUuWQCFmKiyoihI7iiZNIrMrtEeqeSL-uYKglDvCK0tW7f8CxyaWWxmEP9DH6ZMrPKdwWU98-8-IRiXak78MayodBunEsl2EiQVx7YqiZvgHks12iArAAX1XP9TzHPhHREXPSVIKapqb3_Aj88p0RmI6wuRdWkom0nUF3-f18rJxfbxBn-QNI7_n2Ygt9IM6Uni6IlpWHRlU1eTKr_oCn-3byWx28ChX7b8OvifK23tfKUVcPClsn13GFCR9NL7PeUxO20517fKxPonFP3ryCmV005fBdUG3A7IS8e8vjfb2EVJ4EOhc-46AfF6a2zjIwuKBzZt-Eqk9P2A1eD11gyhKyKlBTqlOgpFzfC4BtJrNYs1irLhxaGkjRwkWq6TQQ_x_TlQM2F3Au0tB3KzzWhzCzu3C8wzBZMtKJdyt45KrQ0uEYMwE2rKm6aF2ENXGZmiiXu3Iu6-93BEZM0-qg2XfplVeyC9MyuzPKLtlg54QUAqYUq2_7Vpsr_tazVn6YqUlq4-Nb-Xp9i2m-AjDTpESZ6_c5U6FFiABcYw-wbyy4ViBVxq63Hzti3BhKbLEP-QQviEVgeb7XhkmURGpb9gluLQX2ETxac0EwynaP3swqtXDYNnhaeF5uJGFMwcgNEKzgiBzQrbwH36gU7wyS2j9DCj0hkcjBQPfW7cI5GE6qoej8MEIALTmxWZ1AwaKuHeJR67Ga2kRFR9umgFacwGhreghUj0rhP7BZ3DadA8w-DCIQ8tcSY-JJFApMWCXtAkKESNaR5DXzJy33MWbmvswG0X97PqBbDnExQxLIEOfeOsqjHJMftkpiCd7ai6N8IVknBG5QBzScREbnuOQJKrtYy9hiYRG- -0HIzM_1EmD4JRaVm00]--></g></svg> |