Update flag to svg, make it works on web (main menu and languages)

This commit is contained in:
Thomas Fransolet 2023-01-25 17:52:31 +01:00
parent 2f67bbe7ac
commit 67dd1bed91
30 changed files with 1067 additions and 280 deletions

26
assets/images/ar.svg Normal file
View File

@ -0,0 +1,26 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-sa" viewBox="0 0 512 512">
<defs>
<clipPath id="a">
<path fill-opacity=".7" d="M124 0h496v496H124z"/>
</clipPath>
</defs>
<g fill-rule="evenodd" clip-path="url(#a)" transform="translate(-128) scale(1.0321)">
<path fill="#199d00" d="M0 0h744v496H0z"/>
<path fill="#fff" d="M187.5 140.6c-.8 11.6-1.9 32 8 34.1 11.9 1.1 5.3-20.2 9.6-24 .9-2 2.4-2 2.5.5v18c-.1 6 3.7 7.6 6.7 8.9 3.2-.3 5.2-.2 6.5 2.8l1.4 31.3s7.3 2 7.6-17.6c.4-11.5-2.3-21.2-.7-23.4 0-2.2 2.8-2.3 4.8-1.3 3.1 2.2 4.5 5 9.3 3.8 7.4-2 11.8-5.6 12-11.2a51 51 0 0 0-3.4-16.1c.3-1-1.5-3.5-1.1-4.5 1.3 2 3.3 1.9 3.8 0-1.3-4.2-3.2-8.1-6.4-9.8-2.6-2.3-6.4-1.8-7.8 3a26 26 0 0 0 6 17.3 17 17 0 0 1 1.5 8.7c-2.1 1.3-4.2.7-6-1.1 0 0-5.9-4.5-5.9-5.4 1.6-10 .4-11.1-.5-13.9-.6-3.8-2.4-5-3.9-7.6-1.5-1.6-3.4-1.6-4.4 0-2.6 4.5-1.4 14.1.5 18.4 1.4 4 3.4 6.5 2.4 6.5-.8 2.2-2.4 1.7-3.6-.9a61.2 61.2 0 0 1-2.1-16.9c-.5-4.5-1-14-4-16.4-1.8-2.4-4.5-1.2-5.4 1a80 80 0 0 0 .3 13c2 7 2.6 13.4 3.6 20.7.3 9.8-5.7 4.3-5.4-.6 1.4-6.3 1-16.3-.2-18.8-1-2.5-2.1-3.1-4.4-2.7-2-.2-6.7 5-8 13.8 0 0-1.2 4.5-1.7 8.4-.7 4.5-3.6 7.7-5.7-.6-1.8-6-2.9-20.9-5.9-17.4z"/>
<path fill="#fff" d="m219.9 188.2-31 14.9c.3-7 14.7-19.8 24.5-20 6.4.2 4.8 2.5 6.5 5z"/>
<path fill="#fff" d="M214.5 197.9c-16.4 42.1 38.2 48 44.3 1.7.6-1.9 3-3.8 3.3-.7-1.3 42-42.2 44.8-49.2 31.6-1.7-3-2.2-10-2.4-14.2-1-8.2-5.4-5-6 3.2-.7 4.5-.6 5.8-.6 10.2 2.2 33 55 18.8 63.6-8.5 4.5-15.1-.8-26.3 1.7-26.3 5.2 5.7 12.6.8 14.2-1.2.7-1 2.4-1.6 3.6-.3 4 3 11.3 1.5 12.8-3.6.8-5.1 1.5-10.3 1.7-15.7-3.3 1-5.8 1.7-6 3l-.7 4.6c-.3 1.4-3.2 1.5-3.3-.4-1.3-5.7-6.5-6.5-9.7 2.4-2.1 1.8-6 2-6.4-.5.5-6-1.9-6.8-6.7-4l-4.7-35c2 0 3.9 1.4 5.7-.9-2-6.3-6.3-19-8.6-20-1.2-1.4-2.1-.5-3.6-.2-2.6.8-5 3-4.2 7.3l8 50.2c.4 2.1-1.4 5-3.7 4.7-3.9-2.7-4.9-8-11.5-7.8-4.9 0-10.4 5.3-11 10.4-.9 4-1.2 8.4 0 11.9 3.3 4 7.4 3.7 11 2.7 2.9-1.2 5.3-4.1 6.4-3.4.7.9.1 10.5-13.9 18-8.4 3.8-15.2 4.6-18.8-2.3-2.2-4.3.2-20.7-5.3-17z"/>
<path fill="#fff" d="M283.8 155c3.3-1.1 18.8-19 18.8-19l-2.3-1.8c-.9-.8-.8-1.5 0-2.3 3.8-2.2 2.6-7.2.6-9.4a9.4 9.4 0 0 0-8.4 0c-2.7 2.7-3.3 6.8-1.2 9.4 2 1 4.2 3 2.8 4.2-6.4 6.8-23.8 18.5-21.8 19 .4.5 11.2.5 11.5 0zm-93.9 63c-5.8 9.3-6.3 23.2-3 27.3 1.6 2 4.4 2.8 6.5 2.2 3.7-1.6 5.3-9 4.4-11.7-1.2-2-2.2-2.2-3.4-.6-2.6 5.2-3.7 1.6-3.9-1.3-.4-5.5.1-10.7.7-14.7.7-4.1 0-2.9-1.3-1.2zM439 203c-5.6-12.1-13.4-24.1-15.9-28.7a541 541 0 0 0-24-34.9c-6-7.2 9.9 3-2-11.3-4.5-4-4.8-4.1-8.6-7.3-1.9-1.4-6.5-3.8-7.3.2a23.5 23.5 0 0 0 .4 8.6c.4 2 3.3 5.3 4.8 7.3 19 25.5 35.9 51.4 52.1 83.8 2.6-1.2 2-15.6.5-17.7z"/>
<path fill="#fff" d="M414.3 243.7c-1.1 1.3 2.7 6.6 7.7 6.6 8.4-1 15.7-5.7 22.5-18 1.8-3 5-9 5.1-13.9.7-28-1.4-49.8-5.6-70-.2-2 0-4.4.3-5 .5-.6 2.3 0 3.3-1.5 1.4-1.5-3.8-13.6-6.7-18.2-1.1-2.1-1.5-3.5-3.2.2-1.9 3-3 8.3-3 13.2 4 27.6 5.3 51.8 7.9 79.3.2 2.7-.2 6.6-2 8.1a77.8 77.8 0 0 1-26.3 19.2zm112.8-.1c-6 3.4-6 7.4-1.1 7.6 8.3-1 18.2-1.7 25-12 1.8-2.9 4-10.7 4.1-15.4.6-28-.4-49-4.6-69.2-.2-2-1.1-6.5-.8-7.1.6-1.4 3.3.1 4.3-1.5 1.4-1.4-7-12.3-10-17-1.1-2-1.5-3.4-3.2.3-1.9 3-2.5 8.4-1.8 13.1 4.5 30 7.8 52.5 8.4 79-.3 2.6-.4 4-1.6 7.1-2.6 3.4-5.5 7.6-8.3 9.6-2.7 2-8.5 4-10.4 5.5z"/>
<path fill="#fff" d="M531.6 216.7v-18.3a33 33 0 0 0-3-13.2c-1.8-4-.7-7.1-1.5-11.4-.8-4.2-.6-10.6-1.8-15.6-.4-2-1.4-8.2-1-8.8.4-1.4 2.3 0 3.2-1.6 1.4-1.5-4.8-17.5-7.9-22-1.1-2-3.1-1.4-5.7 2-2.3 2.1-1.4 7.1-.5 11.8 6 31.3 10.4 59.7 9.5 89.4-.3 2.6 8.8-7.5 8.7-12.3zm-44.3-38.8c-3.7 0-11.6-7.4-14-11.6a7.8 7.8 0 0 1 .5-6.2c1.4-1 3.6-2 5.2-1 0 0 1.6 2.4 1.3 2.7 2 1 3 .4 3.2-.5.1-1.4-.7-2.3-.7-4 1-4.3 6-5 7.8-2.2 1.4 1.7 1.9 5.3 2.1 7.8 0 1.2-2-.3-3.2 0-1.1.4-1.4 1.7-1.5 2.9-.2 3.2-.6 8.3-.7 12zm-69.6 46.6c1-9.6-.3-26.5-.4-32.1-.4-13.3-2.6-39-3.6-43.2-1.2-8.1 3.3.9 2.7-3.8-1.5-8-6-13.6-11.2-21-1.7-2.3-1.6-2.8-4.3.6-2.8 6.6-.3 11.1.4 16.2 3.8 16.7 6 32 7 47.2a381.2 381.2 0 0 1 .4 47.5c2.9.2 7.5-4.6 9-11.4z"/>
<path fill="#fff" d="M544.5 209.2c-6.7-11.1-16.7-23.2-19.4-27.7a639.2 639.2 0 0 0-28.2-36.7c-8.3-8.7 3.8-1.4-1.6-8.1-4.6-5-6-6.6-9.8-9.6-2-1.3-3.2-3.7-3.8.4-.3 3.6-.5 7.8-.3 10.9 0 1.7 1.8 4.8 3.3 6.7 20 24.7 42 50 59.7 81.7 2.5-1.4 1.7-15.6 0-17.6z"/>
<path fill="#1ba400" d="M242.8 188.6c-.5.9-1.6 2-1.2 3 .8 1 1.4 1.3 2.6 1.4 1 0 2.6.2 2.9-.4a3.2 3.2 0 0 0 .5-3.2c-1-2.8-4.2-1.8-4.8-.8z"/>
<path fill="#fff" d="M467.2 351.3c8.9.3 14.7.4 22.6 1.3l9.2-1c10.3-1 10.8 14.7 10.8 14.7-.1 9.2-3.7 9.6-8.2 10.6-2.6.4-4-1.5-5.3-3.5-1.7.7-4 .8-6.9.4-3.7-.2-7.4-.2-11-.5-4-.3-6.1.5-10 .1-.9 1.3-2 3-4.3 2.5-2-.2-4.4-5.9-3.7-10.1 1.4-3.1 1-2.1.9-3.5-36.4-.9-73-2.5-108.7-2-28 0-55.5 1.2-83 2.4-14.7-.2-26-2.6-33.7-14 .7 0 37.5 2.2 48.2 1.5 20-.3 38.1-1.9 58.4-2.5 40 .7 79.5.7 119.5 3.5-3.8-2.6-4-8.8 2-10.3.4-.3.7 3 1.6 3 4.6-.3 2.6 6 1.6 7.4zM306.8 131c-6 17.3 3.4 36.2 10 34.4 4.8 2 7.8-7.1 9.8-17 1.3-2.8 2.3-3.1 3-1.7-.2 13.2 1 16.1 4.4 20.1a11 11 0 0 0 14.3.3l5.9-6c1.3-1.3 3-1.4 4.9-.2 1.8 1.7 1.5 4.5 5.4 6.5 3.2 1.3 10.2.3 11.8-2.5 2.1-3.7 2.7-5 3.7-6.4 1.5-2 4.1-1.2 4.1-.5-.2 1.1-1.7 2.3-.7 4.3 1.8 1.4 2.3.5 3.4.2 3.8-1.8 6.7-10.2 6.7-10.2.1-3-1.6-2.8-2.7-2.2l-3 2.1c-2 .3-5.6 1.5-7.4-1.3-1.8-3.3-1.9-8-3.3-11.4 0-.2-2.4-5.3-.1-5.6 1.1.2 3.6.8 4-1.2 1.2-2-2.6-7.7-5.2-10.6-2.2-2.4-5.4-2.7-8.4-.2-2 2-1.8 4-2.2 6.1a9.6 9.6 0 0 0 2 8.4c2.1 4.1 6 9.4 4.7 17 0 0-2.3 3.5-6.2 3-1.6-.4-4.2-1-5.6-11.4-1-7.9.2-18.9-3.1-24-1.2-3.2-2-6.2-5-.8-.8 2-4.2 5.2-1.8 11.8a35 35 0 0 1 2 18.3c-1.4 2.1-1.7 2.9-3.6 5-2.5 2.7-5.3 2-7.4 1-2-1.3-3.6-2-4.5-6.3.2-6.8.5-17.9-.7-20.3-1.8-3.6-4.8-2.3-6.1-1.2a46.3 46.3 0 0 0-11.2 22.9c-1.7 5.5-3.5 4-4.8 1.7-3.1-3-3.3-25.9-7.1-22.1z"/>
<path fill="#fff" d="M325 168.7c2.8-2 1.5-3.3 5.6.8a69.8 69.8 0 0 1 9 30.3c-.3 2.5 1.5 4 2.3 3.5.4-5.8 14.7-14 27.7-15.2 2-.4 1-4.2 1.3-6.2-.8-7.2 4-13.8 10.9-14.3 9.2 1.4 12.3 6.3 12.5 13.8-1 14.5-16.1 17-24.6 18-1.3.6-1.8 1.2 0 1.9l35.5.1 1.8 1c.2 1-.5.2-2 2.5s-3.4 7.7-3.5 11.2a173 173 0 0 1-32.6 6.2c-3.8 2-5.7 4.6-5 7.5 1.3 3.3 9.9 6.5 9.9 6.7 1.6 1 3.5 3.4-.5 8.2-17.3-.7-30.7-8.1-35.3-18.5-1.4-1-3 0-3.9 1.4a54.7 54.7 0 0 1-24.9 20.7c-6.9 1.7-13.9-1-17.2-5.5-2.2-2.6-2.1-5.4-3-6-3.7 1.6-35.6 15.2-31.5 8.9 7.7-8.4 21.2-14.5 33-22.7 1-2.7 2.5-12 7.2-15 .2 0-.8 5.4-.7 7.7 0 1.9-.1 2.6.3 2.1.8-.5 15.2-11.8 16.3-15.3 1.4-2 .4-7 .4-7.2-2.6-7-6.4-7.5-7.8-11-1.3-4.6-.7-9.8 1.9-11.3 2.3-2.1 5-1.9 7.6.4 3 2.6 5.5 7.7 6.3 11.5-.5 1.5-3.8-1-5-.2 2 2 3 4.5 3.7 7.5 2 8 1.3 11-.5 16.2-6.4 13.4-14.6 17.5-21.8 22.4-.2.1-.3 3.5 2.4 5.3 1 1 4.7 1.4 9 0a52.8 52.8 0 0 0 21.7-22.6c1.3-7.2-.5-14.8-2.4-21.4a252.7 252.7 0 0 1-6-16c-.2-4 .1-5.4 2-7.4zm-92.8-37.4c4 1.9 11.7 1 11.4-5.5l-.2-3.1c-.8-2-3.1-1.5-3.6.6-.2.6.3 1.7-.3 2-.4.3-1.7.1-1.6-1.7 0-.6-.4-1.2-.7-1.6-.3-.1-.4-.2-.9-.2-.6 0-.5.2-.9.7l-.3 1.5c0 .7-.3.9-.8 1-.5 0-.4 0-.8-.2-.3-.3-.6-.4-.6-.9l-.2-1.6a2 2 0 0 0-1-.6c-2.3 0-2.4 2.6-2.3 3.6-.2.1-.3 4.7 2.8 6z"/>
<path fill="#fff" d="M351.8 181.9c4 2 13.8.8 11.4-5.5l-.2-3c-.8-2-3-1.5-3.6.5-.1.6.3 1.7-.3 2-.3.4-1.6.2-1.6-1.6 0-.6-.4-1.2-.7-1.6-.2-.2-.4-.2-.9-.2s-.5.1-.8.6l-.3 1.5c-.1.7-.4 1-.8 1-.6 0-.4 0-.9-.2-.2-.3-.6-.4-.6-.9s0-1.3-.2-1.6c-.2-.3-.6-.4-1-.5-2.2 0-2.4 2.5-2.3 3.5-.1.2-.2 4.7 2.8 6zm69.8-21c4 2 11.7 1.1 11.4-5.4l-.2-3.1c-.8-2-3.1-1.5-3.6.5-.2.7.3 1.7-.3 2-.4.4-1.7.2-1.6-1.6 0-.6-.5-1.2-.7-1.6-.3-.1-.4-.2-1-.2-.5 0-.5.2-.8.7l-.3 1.5c0 .6-.3.9-.8 1-.5 0-.4 0-.8-.3-.3-.2-.6-.4-.6-.8 0-.5-.1-1.3-.3-1.7-.2-.3-.5-.4-1-.5-2.2 0-2.3 2.6-2.2 3.5-.2.2-.3 4.8 2.8 6zm36 52.7c-7 8-3.9 21.2-2.3 24 2.4 4.8 4.2 7.8 8.8 10.1 4.2 3 7.4 1.1 9.2-1 4.2-4.3 4.2-15.4 6.2-17.6 1.4-4 4.8-3.3 6.5-1.5a16 16 0 0 0 6 5.1c3.9 3.4 8.5 4 13.1 1 3.1-1.8 5.2-4.1 7-8.6 2-5.5 1-30.7.5-45.6-.1-1.2-4-20.6-4-20.8 0-.2-.6-9.9-1-12.2 0-.9-.3-1.2.7-1 1 .8 1.2.9 1.8 1.2 1 .2 2-1.6 1.4-3.3l-9.8-18c-.7-.7-1.7-1.5-3 .3a7 7 0 0 0-2.4 5.3c.3 4.3 1 8.6 1.3 12.9l4 21.8c1.2 15.6 1.5 28.3 2.7 44-.2 6.5-2.2 12.3-4.2 13 0 0-2.9 1.8-4.8 0-1.5-.7-7.2-9.6-7.2-9.6-3-2.7-4.8-2-7 0-5.6 5.5-8.2 15.9-12.1 23-1 1.6-3.9 3-7-.1-8-11-3.3-26.4-4.3-22.4zm-34.2-90.9c3.7 1.5 6.2 9 5.4 12.6-.7 4.4-2.7 9.3-4 8.6-1.6-.5 1-4.4-.5-8.5-.8-2.6-5.8-7.5-5.3-8.9-1-3 2.2-4.3 4.4-3.8z"/>
<path fill="#fff" d="M469.5 218c.7-9-.6-14.4-.8-19.6-.2-5.2-6-45-7-49-1.5-7.5 5.5-1 4.7-5.4-2.4-5.5-8.3-13.5-10.2-18.2-1.1-2-.7-3.9-3.2-.6a41 41 0 0 0-2.2 18.6c6 31.3 12.1 57.3 11.1 87.1 2.9 0 6.2-6.5 7.6-13zm62.4-82.7c3.4 1.7 5.3 11 5 13.6-.7 4.9-2.5 10-3.8 9.4-1.3-.6.3-7.2-.4-9.2-.7-2.9-5.2-8.1-4.8-9.7-.9-3.2 2-4.6 4-4zm-247.7 65.8c3.2 1.3 5 8 4.7 10-.6 3.6-2.3 7.4-3.5 7-1.3-.5.2-5.3-.4-6.8-.3-3.7-4.7-5.6-4.6-7.1-.8-3 1.9-3.5 3.8-3z"/>
<path fill="#1b9d00" d="M361.3 211.4c4 .2 6.1 3.5 2.3 4.8-3.8 1.3-7.5 2.3-7.5 7.8 1.4 7.7-2 5-4 4-2.3-1.7-8.9-5.7-9.8-14.5-.1-2 1.5-3.8 4.1-3.8 4 1 9.8 1.2 14.8 1.7z"/>
<path fill="#fff" d="M199 120.5c4.7 1.4 5 8.3 4.6 10.4-.6 3.7-2.3 7.6-3.5 7.1-1.3-.4 0-5.4-.6-7-.7-2.2-4.7-6.2-4.2-7.4-1-2.4 1.8-3.5 3.7-3zm92.9 32.6c-3.6 2-5 7.8-2.8 11.2 2.1 3 5.4 1.9 5.9 1.9 3.5.4 5.6-6.7 5.6-6.7s.1-2-4 1.8c-1.8.3-2-.3-2.5-1.3a8.7 8.7 0 0 1 .6-5.6c.6-1.7-.8-2.5-2.8-1.3zm27-35.3c-1.7 1.3-5.4 5-5.5 9.3 0 2.4-.5 2.4 1 4 1.2 1.6 2.4 1.5 4.7.3a5 5 0 0 0 2.2-3.3c.6-2.8-2.9 1.3-3.3-1.8-.8-2.8 1.4-4 3.5-6.8 0-1.9 0-3.2-2.5-1.7zm21.9 4a56.9 56.9 0 0 0-1.6 10.7c-.6 2.7 2.8 3.8 4.4.3 2.3-6.3 2.3-9 2.5-11.7-.7-4-3.5-4-5.3.6zm137.5 69.9c.4-.5 19.4-14 19.4-14 1.9-.6 1.5 7 .6 7a75.3 75.3 0 0 1-20 13.9c-1 .6-1.9-5.2 0-7zm17.2-.1c3.3 1.6 4.7 11.4 4.3 14 .1 5.2-3.2 9.3-4.5 8.6-1.4-.6.1-6.4-.5-8.4-.7-2.9-3.6-8.3-3.1-9.8-1-3.3 1.8-5 3.8-4.4zm-112.4 42c1.3-2 5.3-4.7 5.4-4.7 1.9-1 3.7.7 3.6.6.3 1.9-1.2 3.6-.7 6.1.4 1 .7 2.1 2.6 1.7 3-2.3 5.8-2.5 8.8-2.7 2.3.2 2.3 4 .9 4.1-5.6 1.2-8 2.7-12 4.2-1.9 1.1-3.5-.3-3.5-.4s-1-1.1-.3-3.6c.1-2-.7-3-2.3-2.8-1.3.6-2.4 1-3-.4-.3-1-.3-1.5.5-2.1zm132.3 5.2c.8 1 1.4 2 0 3.7l-3.6 3c-.7 1.2-1 2.8.9 3.3 3.5 1 11.7-4.3 11.7-4.4 1.3-1 .9-2.9.7-2.9-.7-.9-2.5-.4-3.6-.5-.6 0-2.4-.3-1.6-1.9.8-1 1-1.6 1.5-2.9.6-1.2.1-2-1.9-2.7-2-.3-2.8-.1-5 0-1.3.3-1.7.8-2 2.3.2 2.2 1.5 2.1 3 3z"/>
<path fill="#259f00" d="M383.8 183.8c-.5 1-2.3.9-4 0s-2.5-2.5-2-3.4 2.3-.9 4 0 2.5 2.5 2 3.4zM297.5 132c-1 .3-2.3-.6-2.9-2s-.3-2.5.7-2.8 2.3.7 2.9 2 .3 2.6-.7 2.8z"/>
<path fill="#209000" d="M468.2 363.3c9 .4 17.6.1 26.6.6 1.7 1.3.5 4.8-.6 4.5l-7.6-.2c0-2.9-7.5-2.4-7.2.1-4 .5-7.6-.1-11.6-.3-1.2-1.5-1-4.1.4-4.7z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

11
assets/images/cn.svg Normal file
View File

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="flag-icons-cn" viewBox="0 0 512 512">
<defs>
<path id="a" fill="#ff0" d="M1-.3-.7.8 0-1 .6.8-1-.3z"/>
</defs>
<path fill="#ee1c25" d="M0 0h512v512H0z"/>
<use xlink:href="#a" width="30" height="20" transform="matrix(76.8 0 0 76.8 128 128)"/>
<use xlink:href="#a" width="30" height="20" transform="rotate(-121 142.6 -47) scale(25.5827)"/>
<use xlink:href="#a" width="30" height="20" transform="rotate(-98.1 198 -82) scale(25.6)"/>
<use xlink:href="#a" width="30" height="20" transform="rotate(-74 272.4 -114) scale(25.6137)"/>
<use xlink:href="#a" width="30" height="20" transform="matrix(16 -19.968 19.968 16 256 230.4)"/>
</svg>

After

Width:  |  Height:  |  Size: 736 B

5
assets/images/de.svg Normal file
View File

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-de" viewBox="0 0 512 512">
<path fill="#ffce00" d="M0 341.3h512V512H0z"/>
<path d="M0 0h512v170.7H0z"/>
<path fill="#d00" d="M0 170.7h512v170.6H0z"/>
</svg>

After

Width:  |  Height:  |  Size: 218 B

7
assets/images/en.svg Normal file
View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-gb" viewBox="0 0 512 512">
<path fill="#012169" d="M0 0h512v512H0z"/>
<path fill="#FFF" d="M512 0v64L322 256l190 187v69h-67L254 324 68 512H0v-68l186-187L0 74V0h62l192 188L440 0z"/>
<path fill="#C8102E" d="m184 324 11 34L42 512H0v-3l184-185zm124-12 54 8 150 147v45L308 312zM512 0 320 196l-4-44L466 0h46zM0 1l193 189-59-8L0 49V1z"/>
<path fill="#FFF" d="M176 0v512h160V0H176zM0 176v160h512V176H0z"/>
<path fill="#C8102E" d="M0 208v96h512v-96H0zM208 0v512h96V0h-96z"/>
</svg>

After

Width:  |  Height:  |  Size: 538 B

547
assets/images/es.svg Normal file
View File

@ -0,0 +1,547 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-es" viewBox="0 0 512 512">
<path fill="#AA151B" d="M0 0h512v512H0z"/>
<path fill="#F1BF00" d="M0 128h512v256H0z"/>
<path fill="#ad1519" d="M171.7 227.6s-.5 0-.8-.2a12.1 12.1 0 0 1-1.1-1l-.7-.5-.7-.9s-.7-1.2-.4-2c.4-1 1-1.3 1.5-1.6.5-.3 1.6-.6 1.6-.6l1.2-.5 1.3-.3.6-.3.9-.1 1.1-.3 1.7.1h5.1a41 41 0 0 0 3.6 1.2c.6.1 1.9.3 2.4.6.6.3 1 .8 1.3 1.1.3.4.3.8.4 1.1v1.1l-.5.9-.6 1-.8.7s-.6.5-1.1.5c-.5 0-5.1-.9-8.2-.9-3 0-7.8.9-7.8.9"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M171.7 227.6s-.5 0-.8-.2a12.1 12.1 0 0 1-1.1-1l-.7-.5-.7-.9s-.7-1.2-.4-2c.4-1 1-1.3 1.5-1.6.5-.3 1.6-.6 1.6-.6l1.2-.5 1.3-.3.6-.3.9-.1 1.1-.3 1.7.1h5.1a41 41 0 0 0 3.6 1.2c.6.1 1.9.3 2.4.6.6.3 1 .8 1.3 1.1.3.4.3.8.4 1.1v1.1l-.5.9-.6 1-.8.7s-.6.5-1.1.5c-.5 0-5.1-.9-8.2-.9-3 0-7.8.9-7.8.9z"/>
<path fill="#c8b100" d="M178.2 220.9c0-1.5.6-2.6 1.4-2.6.8 0 1.4 1.1 1.4 2.6 0 1.4-.6 2.5-1.4 2.5-.8 0-1.4-1.1-1.4-2.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M178.2 220.9c0-1.5.6-2.6 1.4-2.6.8 0 1.4 1.1 1.4 2.6 0 1.4-.6 2.5-1.4 2.5-.8 0-1.4-1.1-1.4-2.5z"/>
<path fill="#c8b100" d="M179 220.9c0-1.3.3-2.4.6-2.4.4 0 .7 1 .7 2.4 0 1.3-.3 2.3-.7 2.3-.3 0-.6-1-.6-2.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179 220.9c0-1.3.3-2.4.6-2.4.4 0 .7 1 .7 2.4 0 1.3-.3 2.3-.7 2.3-.3 0-.6-1-.6-2.3z"/>
<path fill="#c8b100" d="M178.7 218.2c0-.5.4-1 .9-1s1 .5 1 1-.5.9-1 .9a1 1 0 0 1-1-1"/>
<path fill="#c8b100" d="M180.3 217.8v.6h-1.5v-.6h.5v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M180.3 217.8v.6h-1.5v-.6h.5v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h.4"/>
<path fill="#c8b100" d="M181 217.8v.6h-2.7v-.6h1v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M181 217.8v.6h-2.7v-.6h1v-1.3h-.7v-.6h.7v-.6h.6v.6h.6v.6h-.6v1.3h1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179.9 217.3a.9.9 0 0 1 .6.9c0 .5-.4.9-.9.9s-1-.4-1-1c0-.3.4-.7.8-.8"/>
<path fill="#c8b100" d="M179.6 227.4h-5v-1.2l-.3-1.2-.2-1.6c-1.4-1.8-2.6-3-3-2.7 0-.4.2-.6.4-.8 1.2-.7 3.7 1 5.6 3.9l.5.7h4l.5-.7c1.9-2.9 4.4-4.6 5.6-3.9.2.2.4.4.5.8-.5-.3-1.7.9-3 2.7l-.3 1.6-.2 1.2-.1 1.2h-5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179.6 227.4h-5v-1.2l-.3-1.2-.2-1.6c-1.4-1.8-2.6-3-3-2.7 0-.4.2-.6.4-.8 1.2-.7 3.7 1 5.6 3.9l.5.7h4l.5-.7c1.9-2.9 4.4-4.6 5.6-3.9.2.2.4.4.5.8-.5-.3-1.7.9-3 2.7l-.3 1.6-.2 1.2-.1 1.2h-5z"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M171.3 220.6c1-.5 3 1.2 4.8 3.8m11.9-3.8c-1-.5-3.1 1.2-4.9 3.8"/>
<path fill="#c8b100" d="M172.3 229.6a4.8 4.8 0 0 0-.6-1c2-.7 4.8-1 7.9-1 3 0 5.9.3 7.9 1l-.6.9-.3.8c-1.8-.6-4.2-.8-7-.8-2.9 0-5.6.3-7 .8l-.3-.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M172.3 229.6a4.8 4.8 0 0 0-.6-1c2-.7 4.8-1 7.9-1 3 0 5.9.3 7.9 1l-.6.9-.3.8c-1.8-.6-4.2-.8-7-.8-2.9 0-5.6.3-7 .8l-.3-.7"/>
<path fill="#c8b100" d="M179.6 232.2a27 27 0 0 0 6.2-.7c.7-.2 1.1-.5 1-.8 0-.2-.1-.3-.3-.4a25.8 25.8 0 0 0-7-.9c-2.6 0-5.3.4-6.8.9-.2 0-.3.2-.4.4 0 .3.4.6 1 .8 1 .3 3.8.7 6.3.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179.6 232.2a27 27 0 0 0 6.2-.7c.7-.2 1.1-.5 1-.8 0-.2-.1-.3-.3-.4a25.8 25.8 0 0 0-7-.9c-2.6 0-5.3.4-6.8.9-.2 0-.3.2-.4.4 0 .3.4.6 1 .8 1 .3 3.8.7 6.3.7z"/>
<path fill="#c8b100" d="m187.6 227.4-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.8.7-1.5.6c-.6 0-1-.6-1-.6s-.8.5-1.4.5c-.7 0-1.3-.9-1.3-.9s-.6.9-1.2 1c-.7 0-1.2-.6-1.2-.6s-.3.6-1 .7c-.9.1-1.6-.6-1.6-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.3.2.2.4a32.5 32.5 0 0 1 15.5.1l.2-.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m187.6 227.4-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.8.7-1.5.6c-.6 0-1-.6-1-.6s-.8.5-1.4.5c-.7 0-1.3-.9-1.3-.9s-.6.9-1.2 1c-.7 0-1.2-.6-1.2-.6s-.3.6-1 .7c-.9.1-1.6-.6-1.6-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.3.2.2.4a32.5 32.5 0 0 1 15.5.1l.2-.6z"/>
<path fill="#c8b100" d="M179.6 224.8h.3a1.1 1.1 0 0 0 1 1.5c.6 0 1-.3 1.2-.8l.1-.4v.5c.1.5.6.9 1.2.9a1.1 1.1 0 0 0 1.1-1.1v-.1l.4-.4.2.4a1 1 0 0 0-.1.5c0 .6.5 1 1 1 .4 0 .8-.1 1-.4l.2-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1l-1 .3c-.3-.1-.5-.4-.7-.7a1.6 1.6 0 0 1-.8.3c-.6 0-1.2-.4-1.4-1a1.6 1.6 0 0 1-1.2.6 2 2 0 0 1-1.3-.6 1.6 1.6 0 0 1-1.1.4c-.6 0-1.1-.3-1.4-.7-.3.4-.8.7-1.4.7a1.6 1.6 0 0 1-1-.4c-.4.3-.9.6-1.4.6a1.6 1.6 0 0 1-1.2-.5c-.2.5-.8.8-1.4.8-.3 0-.6 0-.8-.2-.1.3-.4.6-.7.7a2 2 0 0 1-1-.3 4.4 4.4 0 0 1-1-1.1v-.5l.9.8c.5.4.9.4.9.4.4 0 .5-.4.5-.7v-.4l.2.3c.2.3.6.5 1 .5.5 0 1-.5 1-1a1 1 0 0 0 0-.6l.1-.4.4.4c0 .7.5 1.2 1 1.2.7 0 1.2-.4 1.2-1v-.3l.2.3c.2.5.6.8 1.1.8.7 0 1.2-.5 1.2-1.1a1 1 0 0 0-.1-.4h.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179.6 224.8h.3a1.1 1.1 0 0 0 1 1.5c.6 0 1-.3 1.2-.8l.1-.4v.5c.1.5.6.9 1.2.9a1.1 1.1 0 0 0 1.1-1.1v-.1l.4-.4.2.4a1 1 0 0 0-.1.5c0 .6.5 1 1 1 .4 0 .8-.1 1-.4l.2-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1l-1 .3c-.3-.1-.5-.4-.7-.7a1.6 1.6 0 0 1-.8.3c-.6 0-1.2-.4-1.4-1a1.6 1.6 0 0 1-1.2.6 2 2 0 0 1-1.3-.6 1.6 1.6 0 0 1-1.1.4c-.6 0-1.1-.3-1.4-.7-.3.4-.8.7-1.4.7a1.6 1.6 0 0 1-1-.4c-.4.3-.9.6-1.4.6a1.6 1.6 0 0 1-1.2-.5c-.2.5-.8.8-1.4.8-.3 0-.6 0-.8-.2-.1.3-.4.6-.7.7a2 2 0 0 1-1-.3 4.4 4.4 0 0 1-1-1.1v-.5l.9.8c.5.4.9.4.9.4.4 0 .5-.4.5-.7v-.4l.2.3c.2.3.6.5 1 .5.5 0 1-.5 1-1a1 1 0 0 0 0-.6l.1-.4.4.4c0 .7.5 1.2 1 1.2.7 0 1.2-.4 1.2-1v-.3l.2.3c.2.5.6.8 1.1.8.7 0 1.2-.5 1.2-1.1a1 1 0 0 0-.1-.4h.3z"/>
<path fill="#c8b100" d="M179.6 227.6c-3.1 0-5.9.3-7.9 1l-.3-.2c0-.2 0-.3.2-.4 2-.6 4.8-1 8-1s6 .4 8 1l.2.3c0 .2-.2.3-.3.2-2-.6-4.8-1-8-1"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M179.6 227.6c-3.1 0-5.9.3-7.9 1l-.3-.2c0-.2 0-.3.2-.4 2-.6 4.8-1 8-1s6 .4 8 1l.2.3c0 .2-.2.3-.3.2-2-.6-4.8-1-8-1z"/>
<path fill="#fff" d="M176.6 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M176.6 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4z"/>
<path fill="#ad1519" d="M179.6 228.8h-1a.3.3 0 0 1-.3-.3c0-.1.1-.3.3-.3h2a.3.3 0 0 1 .4.3.3.3 0 0 1-.4.3h-1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179.6 228.8h-1a.3.3 0 0 1-.3-.3c0-.1.1-.3.3-.3h2a.3.3 0 0 1 .4.3.3.3 0 0 1-.4.3h-1"/>
<path fill="#058e6e" d="M174.7 229.2h-.7c-.2.1-.4 0-.4-.2a.3.3 0 0 1 .2-.3l.7-.1.8-.2c.2 0 .3.1.4.3 0 .2-.1.3-.3.4h-.8"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M174.7 229.2h-.7c-.2.1-.4 0-.4-.2a.3.3 0 0 1 .2-.3l.7-.1.8-.2c.2 0 .3.1.4.3 0 .2-.1.3-.3.4h-.8"/>
<path fill="#ad1519" d="m171.8 229.7.3-.5.7.1-.4.6-.6-.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m171.8 229.7.3-.5.7.1-.4.6-.6-.2"/>
<path fill="#fff" d="M181.7 228.7c0-.3.2-.5.4-.5.3 0 .5.2.5.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M181.7 228.7c0-.3.2-.5.4-.5.3 0 .5.2.5.5 0 .2-.2.4-.5.4s-.4-.2-.4-.4z"/>
<path fill="#058e6e" d="M184.5 229.2h.8c.1.1.3 0 .3-.2a.3.3 0 0 0-.2-.3l-.8-.1-.7-.2c-.2 0-.3.1-.4.3 0 .2.1.3.3.4h.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M184.5 229.2h.8c.1.1.3 0 .3-.2a.3.3 0 0 0-.2-.3l-.8-.1-.7-.2c-.2 0-.3.1-.4.3 0 .2.1.3.3.4h.7"/>
<path fill="#ad1519" d="m187.3 229.7-.2-.5h-.7l.3.6h.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m187.3 229.7-.2-.5h-.7l.3.6h.7"/>
<path fill="#ad1519" d="M179.6 231.6c-2.5 0-4.8-.2-6.5-.7a27.2 27.2 0 0 1 6.5-.7c2.5 0 4.7.3 6.5.7-1.8.5-4 .7-6.5.7"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M179.6 231.6c-2.5 0-4.8-.2-6.5-.7a27.2 27.2 0 0 1 6.5-.7c2.5 0 4.7.3 6.5.7-1.8.5-4 .7-6.5.7z"/>
<path fill="#c8b100" d="M187.4 226.2c.1-.2 0-.4 0-.4-.2 0-.4 0-.5.2 0 .2 0 .4.2.5.1 0 .3-.1.3-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M187.4 226.2c.1-.2 0-.4 0-.4-.2 0-.4 0-.5.2 0 .2 0 .4.2.5.1 0 .3-.1.3-.3z"/>
<path fill="#c8b100" d="M182.5 225.2c0-.2 0-.3-.2-.4-.2 0-.3.2-.3.4s0 .3.2.4c.1 0 .3-.2.3-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M182.5 225.2c0-.2 0-.3-.2-.4-.2 0-.3.2-.3.4s0 .3.2.4c.1 0 .3-.2.3-.4z"/>
<path fill="#c8b100" d="M176.7 225.2c0-.2 0-.3.2-.4.2 0 .3.2.3.4s0 .3-.2.4l-.3-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M176.7 225.2c0-.2 0-.3.2-.4.2 0 .3.2.3.4s0 .3-.2.4l-.3-.4z"/>
<path fill="#c8b100" d="M171.8 226.2c-.1-.2 0-.4.1-.4s.3 0 .4.2c0 .2 0 .4-.2.5-.1 0-.3-.1-.3-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M171.8 226.2c-.1-.2 0-.4.1-.4s.3 0 .4.2c0 .2 0 .4-.2.5-.1 0-.3-.1-.3-.3z"/>
<path fill="#c8b100" d="m179.6 222.4-.9.5.7 1.4.2.2.2-.2.7-1.4-1-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m179.6 222.4-.9.5.7 1.4.2.2.2-.2.7-1.4-1-.5"/>
<path fill="#c8b100" d="m177.7 224.5.4.6 1.3-.4.2-.2-.2-.2-1.3-.4-.4.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m177.7 224.5.4.6 1.3-.4.2-.2-.2-.2-1.3-.4-.4.6"/>
<path fill="#c8b100" d="m181.5 224.5-.4.6-1.3-.4-.2-.2.1-.2 1.4-.4.4.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m181.5 224.5-.4.6-1.3-.4-.2-.2.1-.2 1.4-.4.4.6"/>
<path fill="#c8b100" d="m173.9 223-.7.6.9 1.2.2.1.2-.2.3-1.4-1-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m173.9 223-.7.6.9 1.2.2.1.2-.2.3-1.4-1-.3"/>
<path fill="#c8b100" d="m172.4 225.3.5.5 1.3-.7v-.4h-1.5l-.3.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m172.4 225.3.5.5 1.3-.7v-.4h-1.5l-.3.6"/>
<path fill="#c8b100" d="m176.2 224.6-.3.6-1.4-.1-.2-.2.1-.2 1.3-.7.5.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m176.2 224.6-.3.6-1.4-.1-.2-.2.1-.2 1.3-.7.5.6"/>
<path fill="#c8b100" d="M171 225.5v.7l-1.5.1h-.2v-.3l1.1-1 .6.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M171 225.5v.7l-1.5.1h-.2v-.3l1.1-1 .6.5"/>
<path fill="#c8b100" d="M173.8 225c0-.4.2-.6.5-.6s.5.2.5.5a.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M173.8 225c0-.4.2-.6.5-.6s.5.2.5.5a.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5z"/>
<path fill="#c8b100" d="m185.3 223 .7.6-.9 1.2-.2.1-.2-.2-.3-1.4 1-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m185.3 223 .7.6-.9 1.2-.2.1-.2-.2-.3-1.4 1-.3"/>
<path fill="#c8b100" d="m186.8 225.3-.6.5-1.2-.7-.1-.2.2-.2h1.4l.3.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m186.8 225.3-.6.5-1.2-.7-.1-.2.2-.2h1.4l.3.6"/>
<path fill="#c8b100" d="m183 224.6.3.6 1.4-.1.2-.2-.1-.2-1.3-.7-.5.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m183 224.6.3.6 1.4-.1.2-.2-.1-.2-1.3-.7-.5.6"/>
<path fill="#c8b100" d="M188 225.5v.7l1.5.1h.2v-.3l-1.1-1-.6.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M188 225.5v.7l1.5.1h.2v-.3l-1.1-1-.6.5"/>
<path fill="#c8b100" d="M179 224.5a.5.5 0 0 1 .6-.5c.3 0 .5.2.5.5a.5.5 0 0 1-.5.4.5.5 0 0 1-.5-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M179 224.5a.5.5 0 0 1 .6-.5c.3 0 .5.2.5.5a.5.5 0 0 1-.5.4.5.5 0 0 1-.5-.4z"/>
<path fill="#c8b100" d="M184.4 225a.5.5 0 0 1 .5-.6.5.5 0 0 1 .5.5.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M184.4 225a.5.5 0 0 1 .5-.6.5.5 0 0 1 .5.5.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5z"/>
<path fill="#c8b100" d="m169.1 226.3-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.3 0 .4.4v1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m169.1 226.3-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.3 0 .4.4v1z"/>
<path fill="#c8b100" d="m169.1 226 .6.1c.2.2.2.4 0 .5s-.3.1-.4 0c-.2-.2-.3-.4-.2-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m169.1 226 .6.1c.2.2.2.4 0 .5s-.3.1-.4 0c-.2-.2-.3-.4-.2-.5z"/>
<path fill="#c8b100" d="m189.9 226.3.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 0 0-.5.2v-.2s-.3 0-.4.4v.7l.1.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m189.9 226.3.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 0 0-.5.2v-.2s-.3 0-.4.4v.7l.1.3z"/>
<path fill="#c8b100" d="m189.9 226-.5.1c-.2.2-.3.4-.2.5h.6c.2-.2.2-.4.1-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m189.9 226-.5.1c-.2.2-.3.4-.2.5h.6c.2-.2.2-.4.1-.5z"/>
<path fill="#c8b100" d="M168.2 238h22.9v-6h-22.9v6z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M168.2 238h22.9v-6h-22.9v6z"/>
<path fill="#c8b100" d="m170.6 242 .5-.1h17.5c-.6-.2-1-.7-1-1.3 0-.6.5-1.2 1-1.4a1.8 1.8 0 0 1-.5.1h-17a1.5 1.5 0 0 1-.5 0c.7.2 1 .7 1 1.3 0 .6-.4 1.1-1 1.3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="m170.6 242 .5-.1h17.5c-.6-.2-1-.7-1-1.3 0-.6.5-1.2 1-1.4a1.8 1.8 0 0 1-.5.1h-17a1.5 1.5 0 0 1-.5 0c.7.2 1 .7 1 1.3 0 .6-.4 1.1-1 1.3z"/>
<path fill="#c8b100" d="M171 241.9h17.2c.5 0 1 .3 1 .8 0 .4-.5.8-1 .8H171c-.6 0-1.1-.4-1.1-.8 0-.5.5-.8 1-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M171 241.9h17.2c.5 0 1 .3 1 .8 0 .4-.5.8-1 .8H171c-.6 0-1.1-.4-1.1-.8 0-.5.5-.8 1-.8z"/>
<path fill="#c8b100" d="M171 238h17.2c.5 0 1 .2 1 .6 0 .4-.5.7-1 .7H171c-.6 0-1-.3-1-.7 0-.4.4-.7 1-.7"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M171 238h17.2c.5 0 1 .2 1 .6 0 .4-.5.7-1 .7H171c-.6 0-1-.3-1-.7 0-.4.4-.7 1-.7z"/>
<path fill="#005bbf" d="M195.6 338.6a8.7 8.7 0 0 1-4-.9 8.9 8.9 0 0 0-4-.8c-1.6 0-3 .3-4 .8a8.8 8.8 0 0 1-4 1 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8c-1 .6-2.4 1-4 1v2.4a8.9 8.9 0 0 0 4-1 8.8 8.8 0 0 1 4-.8 9 9 0 0 1 3.9.9 9 9 0 0 0 4 .9 9 9 0 0 0 4-.9 9 9 0 0 1 4-.9c1.5 0 3 .4 4 .9a8.6 8.6 0 0 0 4 .9v-2.5"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M195.6 338.6a8.7 8.7 0 0 1-4-.9 8.9 8.9 0 0 0-4-.8c-1.6 0-3 .3-4 .8a8.8 8.8 0 0 1-4 1 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8c-1 .6-2.4 1-4 1v2.4a8.9 8.9 0 0 0 4-1 8.8 8.8 0 0 1 4-.8 9 9 0 0 1 3.9.9 9 9 0 0 0 4 .9 9 9 0 0 0 4-.9 9 9 0 0 1 4-.9c1.5 0 3 .4 4 .9a8.6 8.6 0 0 0 4 .9v-2.5z"/>
<path fill="#ccc" d="M195.6 341a8.7 8.7 0 0 1-4-.8 8.9 8.9 0 0 0-4-.8c-1.6 0-3 .3-4 .8a9 9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8c-1.5 0-2.9.3-3.9.9a9 9 0 0 1-4 .9v2.4a8.9 8.9 0 0 0 4-.9 8.6 8.6 0 0 1 4-.8 9 9 0 0 1 3.9.8 8.7 8.7 0 0 0 4 1 8.9 8.9 0 0 0 4-1 9 9 0 0 1 4-.8 8.9 8.9 0 0 1 4 .9 9 9 0 0 0 4 .9V341"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M195.6 341a8.7 8.7 0 0 1-4-.8 8.9 8.9 0 0 0-4-.8c-1.6 0-3 .3-4 .8a9 9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8c-1.5 0-2.9.3-3.9.9a9 9 0 0 1-4 .9v2.4a8.9 8.9 0 0 0 4-.9 8.6 8.6 0 0 1 4-.8 9 9 0 0 1 3.9.8 8.7 8.7 0 0 0 4 1 8.9 8.9 0 0 0 4-1 9 9 0 0 1 4-.8 8.9 8.9 0 0 1 4 .9 9 9 0 0 0 4 .9V341"/>
<path fill="#005bbf" d="M195.6 343.6a8.7 8.7 0 0 1-4-1 8.9 8.9 0 0 0-4-.8 9 9 0 0 0-4 .9 8.9 8.9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.9 8.9 0 0 1-4 1v2.4c1.5 0 3-.3 4-.9a8.7 8.7 0 0 1 4-.8 9 9 0 0 1 3.9.8 9 9 0 0 0 8 0 9 9 0 0 1 4-.8c1.5 0 3 .3 4 .8 1 .6 2.4 1 4 1v-2.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M195.6 343.6a8.7 8.7 0 0 1-4-1 8.9 8.9 0 0 0-4-.8 9 9 0 0 0-4 .9 8.9 8.9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.9 8.9 0 0 1-4 1v2.4c1.5 0 3-.3 4-.9a8.7 8.7 0 0 1 4-.8 9 9 0 0 1 3.9.8 9 9 0 0 0 8 0 9 9 0 0 1 4-.8c1.5 0 3 .3 4 .8 1 .6 2.4 1 4 1v-2.6"/>
<path fill="#ccc" d="M195.6 348.5a8.6 8.6 0 0 1-4-1 9 9 0 0 0-4-.7 9 9 0 0 0-4 .8 8.9 8.9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.7 9 9 0 0 0-3.9.8 9 9 0 0 1-4 .9V346a9 9 0 0 0 4-.9 8.8 8.8 0 0 1 4-.8 9 9 0 0 1 3.9.8c1 .6 2.4 1 4 1a9 9 0 0 0 4-1 9 9 0 0 1 4-.8 9 9 0 0 1 4 .8c1 .6 2.4 1 4 1v2.4"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M195.6 348.5a8.6 8.6 0 0 1-4-1 9 9 0 0 0-4-.7 9 9 0 0 0-4 .8 8.9 8.9 0 0 1-4 .9 8.7 8.7 0 0 1-4-1 9 9 0 0 0-4-.7 9 9 0 0 0-3.9.8 9 9 0 0 1-4 .9V346a9 9 0 0 0 4-.9 8.8 8.8 0 0 1 4-.8 9 9 0 0 1 3.9.8c1 .6 2.4 1 4 1a9 9 0 0 0 4-1 9 9 0 0 1 4-.8 9 9 0 0 1 4 .8c1 .6 2.4 1 4 1v2.4"/>
<path fill="#005bbf" d="M195.6 351a8.7 8.7 0 0 1-4-1 8.8 8.8 0 0 0-4-.8 9 9 0 0 0-4 .9 9 9 0 0 1-4 .8 8.7 8.7 0 0 1-4-.9 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8c-1 .6-2.4 1-4 1v-2.5c1.5 0 3-.4 4-1a8.8 8.8 0 0 1 4-.7 9 9 0 0 1 3.9.8 9 9 0 0 0 4 .9 8.9 8.9 0 0 0 4-.9 9 9 0 0 1 4-.8 9 9 0 0 1 4 .8 9 9 0 0 0 4 .9v2.5"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M195.6 351a8.7 8.7 0 0 1-4-1 8.8 8.8 0 0 0-4-.8 9 9 0 0 0-4 .9 9 9 0 0 1-4 .8 8.7 8.7 0 0 1-4-.9 9 9 0 0 0-4-.8 9 9 0 0 0-3.9.8c-1 .6-2.4 1-4 1v-2.5c1.5 0 3-.4 4-1a8.8 8.8 0 0 1 4-.7 9 9 0 0 1 3.9.8 9 9 0 0 0 4 .9 8.9 8.9 0 0 0 4-.9 9 9 0 0 1 4-.8 9 9 0 0 1 4 .8 9 9 0 0 0 4 .9v2.5z"/>
<path fill="#c8b100" d="m170.6 328.5.2.6c0 1.5-1.3 2.7-3 2.7h23.6c-1.6 0-2.9-1.2-2.9-2.7l.1-.6a1.4 1.4 0 0 1-.5 0h-17.5"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="m170.6 328.5.2.6c0 1.5-1.3 2.7-3 2.7h23.6c-1.6 0-2.9-1.2-2.9-2.7l.1-.6a1.4 1.4 0 0 1-.5 0h-17.5z"/>
<path fill="#c8b100" d="M171 327h17.2c.5 0 1 .3 1 .7 0 .5-.5.8-1 .8H171c-.6 0-1.1-.3-1.1-.8 0-.4.5-.8 1-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M171 327h17.2c.5 0 1 .3 1 .7 0 .5-.5.8-1 .8H171c-.6 0-1.1-.3-1.1-.8 0-.4.5-.8 1-.8z"/>
<path fill="#c8b100" d="M168 337.8h23.3v-6H168v6z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M168 337.8h23.3v-6H168v6z"/>
<path fill="#ad1519" d="M166 305.8c-2.2 1.3-3.8 2.7-3.5 3.4 0 .6.8 1 1.9 1.8 1.6 1.1 2.6 3.2 1.8 4.1a5.9 5.9 0 0 0-.1-9.3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M166 305.8c-2.2 1.3-3.8 2.7-3.5 3.4 0 .6.8 1 1.9 1.8 1.6 1.1 2.6 3.2 1.8 4.1a5.9 5.9 0 0 0-.1-9.3z"/>
<path fill="#ccc" d="M171.3 326h16.6v-81.6h-16.6V326z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M183.1 244.5V326m2-81.4V326m-13.8 0h16.6v-81.5h-16.6V326z"/>
<path fill="#ad1519" d="M205 275a52.8 52.8 0 0 0-17-3 51.6 51.6 0 0 0-8 .8c-9.9 1.7-17.5 5.6-16.9 8.9v.2l-3.7-8.7c-.7-3.6 7.7-8 18.8-9.8a57 57 0 0 1 9.8-.8c7 0 13.2.9 16.9 2.3v10"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M205 275a52.8 52.8 0 0 0-17-3 51.6 51.6 0 0 0-8 .8c-9.9 1.7-17.5 5.6-16.9 8.9v.2l-3.7-8.7c-.7-3.6 7.7-8 18.8-9.8a57 57 0 0 1 9.8-.8c7 0 13.2.9 16.9 2.3v10"/>
<path fill="#ad1519" d="M171.3 285.1c-4.7-.3-7.8-1.5-8.2-3.5-.3-1.5 1.3-3.2 4-4.7 1.3.1 2.7.3 4.2.3v8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M171.3 285.1c-4.7-.3-7.8-1.5-8.2-3.5-.3-1.5 1.3-3.2 4-4.7 1.3.1 2.7.3 4.2.3v8"/>
<path fill="#ad1519" d="M188 279c2.8.4 5 1 6 2l.2.1c.5 1-2 3.3-6.3 5.8v-8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M188 279c2.8.4 5 1 6 2l.2.1c.5 1-2 3.3-6.3 5.8v-8"/>
<path fill="#ad1519" d="M160.9 300.9c-.4-1.3 4-4 10.4-6.3 3-1 5.3-2.1 8.3-3.4 8.9-4 15.4-8.4 14.6-10l-.1-.2c.5.4 1.2 8.4 1.2 8.4.8 1.5-5.2 6-13.3 9.8-2.6 1.3-8.1 3.3-10.7 4.2-4.7 1.6-9.3 4.7-8.9 5.8l-1.5-8.3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M160.9 300.9c-.4-1.3 4-4 10.4-6.3 3-1 5.3-2.1 8.3-3.4 8.9-4 15.4-8.4 14.6-10l-.1-.2c.5.4 1.2 8.4 1.2 8.4.8 1.5-5.2 6-13.3 9.8-2.6 1.3-8.1 3.3-10.7 4.2-4.7 1.6-9.3 4.7-8.9 5.8l-1.5-8.3z"/>
<path fill="#c8b100" d="M170.1 271c2-.7 3.4-1.6 2.7-3.2-.4-1-1.4-1.2-3-.7l-2.8 1 2.5 6.2.9-.3.8-.3-1-2.7zm-1.2-3 .7-.2c.6-.3 1.3 0 1.5.8.3.5.2 1.1-.5 1.6a4.7 4.7 0 0 1-.7.3l-1-2.5m7.7-2.6-.8.3h-1l1.5 6.5 4.5-.9-.2-.4v-.4l-2.7.7-1.3-5.8m9 5.6 2.9-6.8a5.4 5.4 0 0 1-1.1 0 58.5 58.5 0 0 1-2 5c-.8-1.6-1.7-3.1-2.4-4.7l-1 .1h-1.1l3.7 6.5.5-.1h.5m9.4-5 .5-.9a3.7 3.7 0 0 0-1.9-.6c-1.8-.2-2.8.6-3 1.7-.2 2.3 3.4 2.1 3.3 3.7-.1.6-.8.9-1.6.8-.8 0-1.4-.5-1.5-1.2h-.2a8 8 0 0 1-.5 1.2c.5.3 1.2.5 1.9.6 1.8.2 3.3-.6 3.4-1.8.2-2.2-3.4-2.3-3.3-3.6 0-.6.5-1 1.4-.8.7 0 1.1.4 1.3 1h.2"/>
<path fill="#ad1519" d="M332.4 225.7s-.8.8-1.3 1c-.6 0-1.3-.6-1.3-.6s-.5.5-1.1.7c-.6.1-1.4-.7-1.4-.7s-.6.8-1.2 1c-.5.2-1.1-.2-1.1-.2s-.2.4-.7.6h-.5l-.6-.5-.7-.7-.6-.2-.3-1.1-.1-.6c-.1-.7.9-1.4 2.4-1.8.8-.2 1.5-.1 2 0a6 6 0 0 1 3.3-.8 6 6 0 0 1 3.2.7 5.9 5.9 0 0 1 3-.7c1.5 0 2.7.3 3.3.8a4.2 4.2 0 0 1 2.1 0c1.5.4 2.5 1.1 2.4 1.8v.6l-.4 1-.6.3-.7.8-.6.3s-.3.2-.5.1c-.5-.2-.7-.6-.7-.6s-.6.4-1.2.2c-.5-.2-1-1-1-1s-.9.8-1.5.7c-.6-.2-1.1-.7-1.1-.7s-.7.6-1.2.5c-.6 0-1.4-.9-1.4-.9"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.4 225.7s-.8.8-1.3 1c-.6 0-1.3-.6-1.3-.6s-.5.5-1.1.7c-.6.1-1.4-.7-1.4-.7s-.6.8-1.2 1c-.5.2-1.1-.2-1.1-.2s-.2.4-.7.6h-.5l-.6-.5-.7-.7-.6-.2-.3-1.1-.1-.6c-.1-.7.9-1.4 2.4-1.8.8-.2 1.5-.1 2 0a6 6 0 0 1 3.3-.8 6 6 0 0 1 3.2.7 5.9 5.9 0 0 1 3-.7c1.5 0 2.7.3 3.3.8a4.2 4.2 0 0 1 2.1 0c1.5.4 2.5 1.1 2.4 1.8v.6l-.4 1-.6.3-.7.8-.6.3s-.3.2-.5.1c-.5-.2-.7-.6-.7-.6s-.6.4-1.2.2c-.5-.2-1-1-1-1s-.9.8-1.5.7c-.6-.2-1.1-.7-1.1-.7s-.7.6-1.2.5c-.6 0-1.4-.9-1.4-.9z"/>
<path fill="#c8b100" d="M331 221.4c0-1.1.6-2 1.3-2 .8 0 1.4.9 1.4 2s-.6 2-1.4 2c-.8 0-1.4-.9-1.4-2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M331 221.4c0-1.1.6-2 1.3-2 .8 0 1.4.9 1.4 2s-.6 2-1.4 2c-.8 0-1.4-.9-1.4-2z"/>
<path fill="#c8b100" d="M331.7 221.4c0-1 .3-1.9.7-1.9.3 0 .6.9.6 1.9 0 1-.3 1.8-.7 1.8-.3 0-.6-.8-.6-1.8"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M331.7 221.4c0-1 .3-1.9.7-1.9.3 0 .6.9.6 1.9 0 1-.3 1.8-.7 1.8-.3 0-.6-.8-.6-1.8z"/>
<path fill="#c8b100" d="M325 229.6a4.8 4.8 0 0 0-.5-1c2-.7 4.7-1 7.8-1 3.1 0 6 .3 8 1l-.6.9-.4.8c-1.8-.6-4.1-.8-7-.8-2.8 0-5.6.3-7 .8l-.2-.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M325 229.6a4.8 4.8 0 0 0-.5-1c2-.7 4.7-1 7.8-1 3.1 0 6 .3 8 1l-.6.9-.4.8c-1.8-.6-4.1-.8-7-.8-2.8 0-5.6.3-7 .8l-.2-.7"/>
<path fill="#c8b100" d="M332.3 232.2c2.5 0 5.3-.4 6.3-.7.7-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a25.7 25.7 0 0 0-6.9-.9 26 26 0 0 0-6.8.9c-.2 0-.4.2-.4.4 0 .3.3.6 1 .8 1 .3 3.7.7 6.2.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.3 232.2c2.5 0 5.3-.4 6.3-.7.7-.2 1-.5 1-.8 0-.2-.2-.3-.4-.4a25.7 25.7 0 0 0-6.9-.9 26 26 0 0 0-6.8.9c-.2 0-.4.2-.4.4 0 .3.3.6 1 .8 1 .3 3.7.7 6.2.7z"/>
<path fill="#fff" d="M338.4 222.3a.5.5 0 0 1 .4-.5c.3 0 .5.2.5.5 0 .2-.2.4-.5.4a.5.5 0 0 1-.4-.4"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M338.4 222.3a.5.5 0 0 1 .4-.5c.3 0 .5.2.5.5 0 .2-.2.4-.5.4a.5.5 0 0 1-.4-.4zm-.3-1.6a.5.5 0 0 1 .5-.4c.2 0 .4.2.4.4s-.2.5-.4.5a.5.5 0 0 1-.5-.4zm-1.1-1a.5.5 0 0 1 .4-.3c.3 0 .5.1.5.4s-.2.4-.5.4a.5.5 0 0 1-.4-.4zm-1.5-.4c0-.2.2-.4.5-.4a.5.5 0 0 1 .4.4.5.5 0 0 1-.4.5c-.3 0-.5-.2-.5-.5zm-1.5 0a.5.5 0 0 1 .5-.4c.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 0 1-.5-.4z"/>
<path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M343 225.3a3 3 0 0 0 .2-1.1 3 3 0 0 0-3-3 2.8 2.8 0 0 0-1.3.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m337.8 223.2.3-.9c0-1.2-1.3-2.1-2.7-2.1-.7 0-1.3.1-1.7.4"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M343.4 224c0-.3.2-.5.4-.5s.5.2.5.4-.2.5-.5.5c-.2 0-.4-.2-.4-.5zm-.2-1.7c0-.2.2-.4.5-.4.2 0 .4.2.4.4s-.2.4-.5.4c-.2 0-.4-.1-.4-.4zm-1-1.2a.5.5 0 0 1 .4-.5c.3 0 .5.2.5.5s-.2.4-.5.4a.5.5 0 0 1-.5-.4zm-1.5-.7c0-.2.3-.4.5-.4.3 0 .5.2.5.4a.5.5 0 0 1-.5.5.5.5 0 0 1-.4-.5zm-1.4 0c0-.2.2-.4.4-.4s.5.2.5.5-.2.4-.5.4-.4-.2-.4-.4z"/>
<path fill="#c8b100" d="m340.3 227.4-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.7.7-1.4.6c-.7 0-1.1-.6-1.1-.6s-.7.5-1.4.5c-.6 0-1.2-.9-1.2-.9s-.7.9-1.3 1c-.6 0-1.1-.6-1.1-.6s-.3.6-1.1.7c-.8.1-1.5-.6-1.5-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.4.2.2.4a32.5 32.5 0 0 1 15.5.1l.2-.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m340.3 227.4-.6-.5s-.6.3-1.3.2c-.7-.1-1-1-1-1s-.7.7-1.4.6c-.7 0-1.1-.6-1.1-.6s-.7.5-1.4.5c-.6 0-1.2-.9-1.2-.9s-.7.9-1.3 1c-.6 0-1.1-.6-1.1-.6s-.3.6-1.1.7c-.8.1-1.5-.6-1.5-.6s-.5.7-1 1c-.6.1-1.3-.4-1.3-.4l-.2.5-.4.2.2.4a32.5 32.5 0 0 1 15.5.1l.2-.6z"/>
<path fill="#fff" d="M325.3 222.3a.5.5 0 0 1 .5-.5.5.5 0 0 1 .4.5.5.5 0 0 1-.4.4c-.3 0-.5-.2-.5-.4"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M325.3 222.3a.5.5 0 0 1 .5-.5.5.5 0 0 1 .4.5.5.5 0 0 1-.4.4c-.3 0-.5-.2-.5-.4zm.3-1.6a.5.5 0 0 1 .4-.4.5.5 0 0 1 .5.4.5.5 0 0 1-.5.5.4.4 0 0 1-.4-.4zm1.1-1c0-.1.2-.3.5-.3s.5.1.5.4-.2.4-.5.4a.5.5 0 0 1-.5-.4zm1.5-.4c0-.2.2-.4.4-.4s.5.2.5.4c0 .3-.2.5-.5.5-.2 0-.4-.2-.4-.5zm1.5 0a.5.5 0 0 1 .4-.4.5.5 0 0 1 .5.5c0 .2-.2.4-.5.4a.5.5 0 0 1-.4-.4z"/>
<path fill="none" stroke="#000" stroke-linecap="round" stroke-width=".3" d="M321.7 225.3a3 3 0 0 1-.3-1.1 3 3 0 0 1 3-3c.4 0 1 .2 1.3.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m326.9 223.2-.3-.9c0-1.2 1.2-2.1 2.7-2.1.6 0 1.2.1 1.6.4"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M320.3 224c0-.3.2-.5.5-.5s.5.2.5.4a.5.5 0 0 1-.5.5c-.3 0-.5-.2-.5-.5zm.2-1.7c0-.2.2-.4.5-.4s.4.2.4.4-.2.4-.4.4a.5.5 0 0 1-.5-.4zm1-1.2c0-.3.3-.5.5-.5a.5.5 0 0 1 .5.5.5.5 0 0 1-.5.4.5.5 0 0 1-.4-.4zm1.5-.7a.5.5 0 0 1 .4-.4c.3 0 .5.2.5.4a.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5zm1.4 0c0-.2.2-.4.5-.4a.5.5 0 0 1 .4.5c0 .2-.2.4-.4.4s-.5-.2-.5-.4z"/>
<path fill="#c8b100" d="M332.4 224.8h.2v.4c0 .6.5 1 1.1 1 .5 0 1-.2 1.1-.7l.2-.4v.5c0 .5.6.9 1.1.9a1.1 1.1 0 0 0 1.2-1.1.7.7 0 0 0 0-.1l.3-.4.2.4a1 1 0 0 0 0 .5c0 .6.4 1 1 1a1.1 1.1 0 0 0 1-.4l.1-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1c-.2.1-.6.3-1 .3-.3-.1-.5-.4-.6-.7a1.6 1.6 0 0 1-.8.3c-.7 0-1.3-.4-1.5-1a1.6 1.6 0 0 1-1.2.6 1.7 1.7 0 0 1-1.3-.6c-.3.3-.7.4-1 .4a1.7 1.7 0 0 1-1.5-.7 1.7 1.7 0 0 1-2.4.3 1.7 1.7 0 0 1-1.3.6c-.5 0-1-.2-1.2-.5-.2.5-.8.8-1.5.8-.3 0-.5 0-.8-.2-.1.3-.3.6-.7.7a2 2 0 0 1-1-.3l-1-1.1v-.5l1 .8c.4.4.8.4.8.4.4 0 .5-.4.5-.7v-.4l.3.3c.2.3.5.5.9.5.6 0 1-.5 1-1a1 1 0 0 0 0-.6l.2-.4.3.4c0 .7.5 1.2 1.1 1.2.6 0 1.1-.4 1.2-1v-.3l.2.3c.1.5.6.8 1 .8a1.1 1.1 0 0 0 1.2-1.5h.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.4 224.8h.2v.4c0 .6.5 1 1.1 1 .5 0 1-.2 1.1-.7l.2-.4v.5c0 .5.6.9 1.1.9a1.1 1.1 0 0 0 1.2-1.1.7.7 0 0 0 0-.1l.3-.4.2.4a1 1 0 0 0 0 .5c0 .6.4 1 1 1a1.1 1.1 0 0 0 1-.4l.1-.3v.4c0 .3.2.6.5.7 0 0 .4 0 1-.4l.8-.8v.5s-.5.8-1 1.1c-.2.1-.6.3-1 .3-.3-.1-.5-.4-.6-.7a1.6 1.6 0 0 1-.8.3c-.7 0-1.3-.4-1.5-1a1.6 1.6 0 0 1-1.2.6 1.7 1.7 0 0 1-1.3-.6c-.3.3-.7.4-1 .4a1.7 1.7 0 0 1-1.5-.7 1.7 1.7 0 0 1-2.4.3 1.7 1.7 0 0 1-1.3.6c-.5 0-1-.2-1.2-.5-.2.5-.8.8-1.5.8-.3 0-.5 0-.8-.2-.1.3-.3.6-.7.7a2 2 0 0 1-1-.3l-1-1.1v-.5l1 .8c.4.4.8.4.8.4.4 0 .5-.4.5-.7v-.4l.3.3c.2.3.5.5.9.5.6 0 1-.5 1-1a1 1 0 0 0 0-.6l.2-.4.3.4c0 .7.5 1.2 1.1 1.2.6 0 1.1-.4 1.2-1v-.3l.2.3c.1.5.6.8 1 .8a1.1 1.1 0 0 0 1.2-1.5h.2z"/>
<path fill="#c8b100" d="M332.3 227.6c-3 0-5.8.3-7.8 1l-.4-.2.2-.4c2-.6 4.9-1 8-1s6 .4 8 1c.2 0 .3.2.2.3 0 .2-.2.3-.3.2-2-.6-4.8-1-7.9-1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.3 227.6c-3 0-5.8.3-7.8 1l-.4-.2.2-.4c2-.6 4.9-1 8-1s6 .4 8 1c.2 0 .3.2.2.3 0 .2-.2.3-.3.2-2-.6-4.8-1-7.9-1z"/>
<path fill="#fff" d="M329.4 228.7c0-.3.2-.5.4-.5s.5.2.5.5c0 .2-.3.4-.5.4s-.5-.2-.5-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M329.4 228.7c0-.3.2-.5.4-.5s.5.2.5.5c0 .2-.3.4-.5.4s-.5-.2-.5-.4z"/>
<path fill="#ad1519" d="M332.4 228.8h-1c-.2 0-.4-.1-.4-.3 0-.1.2-.3.4-.3h2a.3.3 0 0 1 .3.3c0 .2-.1.3-.3.3h-1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.4 228.8h-1c-.2 0-.4-.1-.4-.3 0-.1.2-.3.4-.3h2a.3.3 0 0 1 .3.3c0 .2-.1.3-.3.3h-1"/>
<path fill="#058e6e" d="M327.4 229.2h-.7a.3.3 0 0 1-.4-.2.3.3 0 0 1 .3-.3l.7-.1.7-.2c.2 0 .4.1.4.3 0 .2 0 .3-.3.4h-.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M327.4 229.2h-.7a.3.3 0 0 1-.4-.2.3.3 0 0 1 .3-.3l.7-.1.7-.2c.2 0 .4.1.4.3 0 .2 0 .3-.3.4h-.7"/>
<path fill="#ad1519" d="m324.5 229.7.4-.5.6.1-.4.6-.6-.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m324.5 229.7.4-.5.6.1-.4.6-.6-.2"/>
<path fill="#fff" d="M334.4 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.4.4s-.5-.2-.5-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M334.4 228.7c0-.3.2-.5.5-.5.2 0 .4.2.4.5 0 .2-.2.4-.4.4s-.5-.2-.5-.4z"/>
<path fill="#058e6e" d="M337.3 229.2h.7c.2.1.3 0 .4-.2a.3.3 0 0 0-.3-.3l-.7-.1-.7-.2c-.2 0-.4.1-.4.3 0 .2 0 .3.3.4h.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M337.3 229.2h.7c.2.1.3 0 .4-.2a.3.3 0 0 0-.3-.3l-.7-.1-.7-.2c-.2 0-.4.1-.4.3 0 .2 0 .3.3.4h.7"/>
<path fill="#ad1519" d="m340.1 229.7-.3-.5h-.7l.4.6h.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m340.1 229.7-.3-.5h-.7l.4.6h.6"/>
<path fill="#ad1519" d="M332.3 231.6a27.1 27.1 0 0 1-6.4-.7 27.9 27.9 0 0 1 13 0 27.1 27.1 0 0 1-6.6.7"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M332.3 231.6a27.1 27.1 0 0 1-6.4-.7 27.9 27.9 0 0 1 13 0 27.1 27.1 0 0 1-6.6.7z"/>
<path fill="#c8b100" d="m340.2 226.2-.1-.4c-.2 0-.3 0-.4.2l.1.5c.2 0 .3-.1.4-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m340.2 226.2-.1-.4c-.2 0-.3 0-.4.2l.1.5c.2 0 .3-.1.4-.3z"/>
<path fill="#c8b100" d="M335.2 225.2c0-.2 0-.3-.2-.4-.1 0-.3.2-.3.4s0 .3.2.4c.2 0 .3-.2.3-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M335.2 225.2c0-.2 0-.3-.2-.4-.1 0-.3.2-.3.4s0 .3.2.4c.2 0 .3-.2.3-.4z"/>
<path fill="#c8b100" d="M329.5 225.2c0-.2 0-.3.2-.4.1 0 .3.2.3.4s0 .3-.2.4c-.2 0-.3-.2-.3-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M329.5 225.2c0-.2 0-.3.2-.4.1 0 .3.2.3.4s0 .3-.2.4c-.2 0-.3-.2-.3-.4z"/>
<path fill="#c8b100" d="m324.5 226.2.1-.4c.2 0 .3 0 .4.2l-.1.5c-.2 0-.3-.1-.4-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m324.5 226.2.1-.4c.2 0 .3 0 .4.2l-.1.5c-.2 0-.3-.1-.4-.3z"/>
<path fill="#c8b100" d="m332.3 222.4-.8.5.6 1.4.2.2.3-.2.6-1.4-.9-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m332.3 222.4-.8.5.6 1.4.2.2.3-.2.6-1.4-.9-.5"/>
<path fill="#c8b100" d="m330.4 224.5.4.6 1.4-.4.1-.2-.1-.2-1.4-.4-.4.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m330.4 224.5.4.6 1.4-.4.1-.2-.1-.2-1.4-.4-.4.6"/>
<path fill="#c8b100" d="m334.3 224.5-.4.6-1.4-.4-.1-.2.1-.2 1.4-.4.4.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m334.3 224.5-.4.6-1.4-.4-.1-.2.1-.2 1.4-.4.4.6"/>
<path fill="#c8b100" d="m326.6 223-.7.6 1 1.2.2.1.1-.2.3-1.4-.9-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m326.6 223-.7.6 1 1.2.2.1.1-.2.3-1.4-.9-.3"/>
<path fill="#c8b100" d="m325.2 225.3.5.5 1.2-.7.1-.2-.1-.2h-1.5l-.2.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m325.2 225.3.5.5 1.2-.7.1-.2-.1-.2h-1.5l-.2.6"/>
<path fill="#c8b100" d="m329 224.6-.3.6-1.4-.1-.2-.2v-.2l1.3-.7.6.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m329 224.6-.3.6-1.4-.1-.2-.2v-.2l1.3-.7.6.6"/>
<path fill="#c8b100" d="m323.8 225.5-.1.7-1.5.1h-.2v-.3l1.2-1 .6.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m323.8 225.5-.1.7-1.5.1h-.2v-.3l1.2-1 .6.5"/>
<path fill="#c8b100" d="M326.6 225a.5.5 0 0 1 .5-.6.5.5 0 0 1 .5.5.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M326.6 225a.5.5 0 0 1 .5-.6.5.5 0 0 1 .5.5.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5z"/>
<path fill="#c8b100" d="m338 223 .8.6-1 1.2-.2.1-.1-.2-.3-1.4.9-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m338 223 .8.6-1 1.2-.2.1-.1-.2-.3-1.4.9-.3"/>
<path fill="#c8b100" d="m339.5 225.3-.5.5-1.3-.7v-.2l.1-.2h1.5l.2.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m339.5 225.3-.5.5-1.3-.7v-.2l.1-.2h1.5l.2.6"/>
<path fill="#c8b100" d="m335.7 224.6.3.6 1.4-.1.2-.2v-.2l-1.3-.7-.6.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m335.7 224.6.3.6 1.4-.1.2-.2v-.2l-1.3-.7-.6.6"/>
<path fill="#c8b100" d="m340.7 225.5.1.7 1.4.1h.3v-.3l-1.2-1-.6.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m340.7 225.5.1.7 1.4.1h.3v-.3l-1.2-1-.6.5"/>
<path fill="#c8b100" d="M331.8 224.5c0-.3.3-.5.5-.5s.5.2.5.5c0 .2-.2.4-.5.4a.5.5 0 0 1-.5-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M331.8 224.5c0-.3.3-.5.5-.5s.5.2.5.5c0 .2-.2.4-.5.4a.5.5 0 0 1-.5-.4z"/>
<path fill="#c8b100" d="M337.1 225a.5.5 0 0 1 .5-.6c.3 0 .5.2.5.5s-.2.5-.5.5a.5.5 0 0 1-.5-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M337.1 225a.5.5 0 0 1 .5-.6c.3 0 .5.2.5.5s-.2.5-.5.5a.5.5 0 0 1-.5-.5z"/>
<path fill="#c8b100" d="M331.4 219c0-.4.4-.8 1-.8s.9.4.9.9-.4.9-1 .9a1 1 0 0 1-.9-1"/>
<path fill="#c8b100" d="M333 218.8v.6h-1.5v-.6h.5v-1.4h-.6v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M333 218.8v.6h-1.5v-.6h.5v-1.4h-.6v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h.3z"/>
<path fill="#c8b100" d="M333.7 218.8v.6H331v-.6h1v-1.4h-.7v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M332.6 218.2a.9.9 0 0 1 .7.9c0 .5-.4.9-1 .9a1 1 0 0 1-.9-1c0-.3.3-.7.7-.8"/>
<path fill="#c8b100" d="m321.9 226.3-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.2 0 .3.4c.2.3 0 .7 0 .7v.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m321.9 226.3-.7-.8-.7-.3s.3-.3.6-.3l.5.2v-.2s.2 0 .3.4c.2.3 0 .7 0 .7v.3z"/>
<path fill="#c8b100" d="m321.9 226 .5.1c.2.2.3.4.1.5h-.5c-.2-.2-.2-.4-.1-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m321.9 226 .5.1c.2.2.3.4.1.5h-.5c-.2-.2-.2-.4-.1-.5z"/>
<path fill="#c8b100" d="m342.6 226.3.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 0 0-.5.2v-.2s-.3 0-.4.4v.7l.1.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m342.6 226.3.7-.8.7-.3s-.3-.3-.6-.3a.6.6 0 0 0-.5.2v-.2s-.3 0-.4.4v.7l.1.3z"/>
<path fill="#c8b100" d="m342.6 226-.5.1c-.2.2-.2.4-.1.5.1.2.3.1.5 0 .2-.2.3-.4.1-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m342.6 226-.5.1c-.2.2-.2.4-.1.5.1.2.3.1.5 0 .2-.2.3-.4.1-.5z"/>
<path fill="#c8b100" d="M321 238h22.8v-6h-22.9v6z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M321 238h22.8v-6h-22.9v6z"/>
<path fill="#c8b100" d="M341.4 242a1 1 0 0 0-.4-.1h-17.6c.6-.2 1-.7 1-1.3 0-.6-.5-1.2-1-1.4l.4.1h17.6c-.7.2-1 .7-1 1.3 0 .6.4 1.1 1 1.3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M341.4 242a1 1 0 0 0-.4-.1h-17.6c.6-.2 1-.7 1-1.3 0-.6-.5-1.2-1-1.4l.4.1h17.6c-.7.2-1 .7-1 1.3 0 .6.4 1.1 1 1.3z"/>
<path fill="#c8b100" d="M323.9 241.9h17c.6 0 1.1.3 1.1.8 0 .4-.5.8-1 .8h-17.1c-.6 0-1-.4-1-.8 0-.5.4-.8 1-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M323.9 241.9h17c.6 0 1.1.3 1.1.8 0 .4-.5.8-1 .8h-17.1c-.6 0-1-.4-1-.8 0-.5.4-.8 1-.8z"/>
<path fill="#c8b100" d="M323.9 238h17c.6 0 1.1.2 1.1.6 0 .4-.5.7-1 .7h-17.1c-.6 0-1.1-.3-1.1-.7 0-.4.5-.7 1-.7"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M323.9 238h17c.6 0 1.1.2 1.1.6 0 .4-.5.7-1 .7h-17.1c-.6 0-1.1-.3-1.1-.7 0-.4.5-.7 1-.7z"/>
<path fill="#005bbf" d="M316.4 338.6c1.6 0 3-.3 4-.9a8.9 8.9 0 0 1 4-.8c1.5 0 3 .3 4 .8 1 .6 2.5 1 4 1a8.7 8.7 0 0 0 4-1 9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 0 1-4-1 8.8 8.8 0 0 0-4-.8c-1.5 0-2.8.4-3.9.9a8.8 8.8 0 0 1-4 .9 9 9 0 0 1-4-.9 9 9 0 0 0-4-.9c-1.5 0-3 .4-4 .9a8.6 8.6 0 0 1-4 .9v-2.5"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M316.4 338.6c1.6 0 3-.3 4-.9a8.9 8.9 0 0 1 4-.8c1.5 0 3 .3 4 .8 1 .6 2.5 1 4 1a8.7 8.7 0 0 0 4-1 9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 0 1-4-1 8.8 8.8 0 0 0-4-.8c-1.5 0-2.8.4-3.9.9a8.8 8.8 0 0 1-4 .9 9 9 0 0 1-4-.9 9 9 0 0 0-4-.9c-1.5 0-3 .4-4 .9a8.6 8.6 0 0 1-4 .9v-2.5z"/>
<path fill="#ccc" d="M316.4 341a8.7 8.7 0 0 0 4-.8 8.9 8.9 0 0 1 4-.8c1.5 0 3 .3 4 .8a9 9 0 0 0 4 .9c1.6 0 3-.4 4-1a8.9 8.9 0 0 1 4-.8 8 8 0 0 1 3.9.9 8.9 8.9 0 0 0 4 .9v2.4a8.9 8.9 0 0 1-4-.9 8.6 8.6 0 0 0-4-.8c-1.5 0-2.8.3-3.9.8a8.7 8.7 0 0 1-4 1 8.9 8.9 0 0 1-4-1 9 9 0 0 0-4-.8 8.9 8.9 0 0 0-4 .9 8.6 8.6 0 0 1-4 .9V341"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M316.4 341a8.7 8.7 0 0 0 4-.8 8.9 8.9 0 0 1 4-.8c1.5 0 3 .3 4 .8a9 9 0 0 0 4 .9c1.6 0 3-.4 4-1a8.9 8.9 0 0 1 4-.8 8 8 0 0 1 3.9.9 8.9 8.9 0 0 0 4 .9v2.4a8.9 8.9 0 0 1-4-.9 8.6 8.6 0 0 0-4-.8c-1.5 0-2.8.3-3.9.8a8.7 8.7 0 0 1-4 1 8.9 8.9 0 0 1-4-1 9 9 0 0 0-4-.8 8.9 8.9 0 0 0-4 .9 8.6 8.6 0 0 1-4 .9V341"/>
<path fill="#005bbf" d="M316.4 343.6c1.6 0 3-.4 4-1a8.9 8.9 0 0 1 4-.8 9 9 0 0 1 4 .9c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 0 1-4-.9 8.7 8.7 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.7 8.7 0 0 1-4 1 9 9 0 0 1-4-1 9 9 0 0 0-4-.8c-1.5 0-3 .3-4 .8a8.6 8.6 0 0 1-4 1v-2.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M316.4 343.6c1.6 0 3-.4 4-1a8.9 8.9 0 0 1 4-.8 9 9 0 0 1 4 .9c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v2.4a8.9 8.9 0 0 1-4-.9 8.7 8.7 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.7 8.7 0 0 1-4 1 9 9 0 0 1-4-1 9 9 0 0 0-4-.8c-1.5 0-3 .3-4 .8a8.6 8.6 0 0 1-4 1v-2.6"/>
<path fill="#ccc" d="M316.4 348.5a8.6 8.6 0 0 0 4-1 9 9 0 0 1 4-.7 9 9 0 0 1 4 .8c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 0 1 4-.7c1.5 0 2.8.3 3.9.8 1 .5 2.5.9 4 .9V346a8.8 8.8 0 0 1-4-.9 8.8 8.8 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.7 8.7 0 0 1-4 1 9 9 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-4 .8 8.7 8.7 0 0 1-4 1v2.4"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M316.4 348.5a8.6 8.6 0 0 0 4-1 9 9 0 0 1 4-.7 9 9 0 0 1 4 .8c1 .5 2.5.9 4 .9 1.6 0 3-.4 4-1a9 9 0 0 1 4-.7c1.5 0 2.8.3 3.9.8 1 .5 2.5.9 4 .9V346a8.8 8.8 0 0 1-4-.9 8.8 8.8 0 0 0-4-.8 9 9 0 0 0-3.9.8 8.7 8.7 0 0 1-4 1 9 9 0 0 1-4-1 9 9 0 0 0-4-.8 9 9 0 0 0-4 .8 8.7 8.7 0 0 1-4 1v2.4"/>
<path fill="#005bbf" d="M316.4 351c1.6 0 3-.4 4-1a8.8 8.8 0 0 1 4-.8 9 9 0 0 1 4 .9c1 .5 2.5.8 4 .8 1.6 0 3-.3 4-.9a9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v-2.5a8.8 8.8 0 0 1-4-1 8.8 8.8 0 0 0-4-.7c-1.5 0-2.8.3-3.9.8a8.8 8.8 0 0 1-4 .9 8.9 8.9 0 0 1-4-.9 9 9 0 0 0-4-.8 8.9 8.9 0 0 0-4 .8 8.7 8.7 0 0 1-4 .9v2.5"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M316.4 351c1.6 0 3-.4 4-1a8.8 8.8 0 0 1 4-.8 9 9 0 0 1 4 .9c1 .5 2.5.8 4 .8 1.6 0 3-.3 4-.9a9 9 0 0 1 4-.8c1.5 0 2.8.3 3.9.8 1 .6 2.5 1 4 1v-2.5a8.8 8.8 0 0 1-4-1 8.8 8.8 0 0 0-4-.7c-1.5 0-2.8.3-3.9.8a8.8 8.8 0 0 1-4 .9 8.9 8.9 0 0 1-4-.9 9 9 0 0 0-4-.8 8.9 8.9 0 0 0-4 .8 8.7 8.7 0 0 1-4 .9v2.5z"/>
<path fill="#c8b100" d="m341.4 328.5-.2.6c0 1.5 1.3 2.7 3 2.7h-23.6c1.6 0 2.9-1.2 2.9-2.7a2.8 2.8 0 0 0 0-.6h17.9"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="m341.4 328.5-.2.6c0 1.5 1.3 2.7 3 2.7h-23.6c1.6 0 2.9-1.2 2.9-2.7a2.8 2.8 0 0 0 0-.6h17.9z"/>
<path fill="#c8b100" d="M323.9 327h17c.6 0 1.1.3 1.1.7 0 .5-.5.8-1 .8h-17.1c-.6 0-1-.3-1-.8 0-.4.4-.8 1-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M323.9 327h17c.6 0 1.1.3 1.1.7 0 .5-.5.8-1 .8h-17.1c-.6 0-1-.3-1-.8 0-.4.4-.8 1-.8z"/>
<path fill="#c8b100" d="M320.7 337.8H344v-6h-23.4v6z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M320.7 337.8H344v-6h-23.4v6z"/>
<path fill="#ad1519" d="M346 305.8c2.2 1.3 3.8 2.7 3.6 3.4-.2.6-1 1-2 1.8-1.6 1.1-2.6 3.2-1.8 4.1a5.9 5.9 0 0 1 .1-9.3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M346 305.8c2.2 1.3 3.8 2.7 3.6 3.4-.2.6-1 1-2 1.8-1.6 1.1-2.6 3.2-1.8 4.1a5.9 5.9 0 0 1 .1-9.3z"/>
<path fill="#ccc" d="M324 326h16.7v-81.6h-16.6V326z"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M336.2 244.4v81.4m1.8-81.4v81.4m-14 .2h16.7v-81.6h-16.6V326z"/>
<path fill="#ad1519" d="M307 275a53 53 0 0 1 25-2.2c9.9 1.7 17.5 5.6 16.9 8.9v.2s3.7-8.4 3.7-8.7c.7-3.6-7.7-8-18.8-9.8a57 57 0 0 0-9.8-.8c-7 0-13.2.9-16.9 2.3v10"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M307 275a53 53 0 0 1 25-2.2c9.9 1.7 17.5 5.6 16.9 8.9v.2s3.7-8.4 3.7-8.7c.7-3.6-7.7-8-18.8-9.8a57 57 0 0 0-9.8-.8c-7 0-13.2.9-16.9 2.3v10"/>
<path fill="#ad1519" d="M340.8 285.1c4.6-.3 7.7-1.5 8-3.5.4-1.5-1.2-3.2-4-4.7-1.2.1-2.6.3-4 .3v8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M340.8 285.1c4.6-.3 7.7-1.5 8-3.5.4-1.5-1.2-3.2-4-4.7-1.2.1-2.6.3-4 .3v8"/>
<path fill="#ad1519" d="M324 279c-2.8.4-5 1-6 2l-.2.1c-.5 1 2 3.3 6.3 5.8v-8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M324 279c-2.8.4-5 1-6 2l-.2.1c-.5 1 2 3.3 6.3 5.8v-8"/>
<path fill="#ad1519" d="M351.1 300.9c.4-1.3-4-4-10.4-6.3-3-1-5.3-2.1-8.3-3.4-8.8-4-15.4-8.4-14.6-10l.1-.2c-.4.4-1.2 8.4-1.2 8.4-.8 1.5 5.2 6 13.3 9.8 2.6 1.3 8.1 3.3 10.7 4.2 4.7 1.6 9.3 4.7 8.9 5.8l1.5-8.3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M351.1 300.9c.4-1.3-4-4-10.4-6.3-3-1-5.3-2.1-8.3-3.4-8.8-4-15.4-8.4-14.6-10l.1-.2c-.4.4-1.2 8.4-1.2 8.4-.8 1.5 5.2 6 13.3 9.8 2.6 1.3 8.1 3.3 10.7 4.2 4.7 1.6 9.3 4.7 8.9 5.8l1.5-8.3z"/>
<path fill="#c8b100" d="M317.5 271.3c.6-2.4 1.4-4.7 2.2-7a5.7 5.7 0 0 1-.5.1 5.4 5.4 0 0 1-.6 0c-.4 1.8-.9 3.4-1.5 5.1l-2.9-4.4-1 .2-1 .1a140 140 0 0 1 4.2 6h1.1m6.3-7H322l-.2 6.5h4.6v-.8a32 32 0 0 1-2.7.1v-5.9m7.3 1.1 2.1.3v-.4l.1-.4-6.2-.5v.8h2.2l-.6 6h1l.8.1.6-5.9m2.5 6.5c.3 0 .6 0 1 .2l.8.2.7-3h.1l.5 1.2 1 2.3c.3 0 .7 0 1 .2l1.1.2-.3-.6-1.5-3.1c1.2 0 2-.4 2.3-1.3.1-.7-.1-1.2-.7-1.6a6 6 0 0 0-1.9-.6l-2.5-.5-1.6 6.4m3.2-5.6c.8.2 1.7.3 1.7 1.1a2 2 0 0 1 0 .5c-.3 1-1 1.3-2.3 1l.6-2.6m8.7 7.6-.3 2.1.9.5.9.5.6-7.4a3.6 3.6 0 0 1-.8-.4l-6.6 4.1.6.3.4.3 1.8-1.4 2.5 1.4zm-1.9-1.7 2.2-1.4-.3 2.4-1.9-1"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M230.3 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 0 1-2.2-2.1z"/>
<path fill="#ad1519" stroke="#000" stroke-width=".3" d="M255.3 187.1c6.8 0 13 1 16.8 2.6a32 32 0 0 0 8.6 2.2c2.6.3 5 .4 7 .2 2.9 0 6.9.8 11 2.6a29.2 29.2 0 0 1 8 5l-1.7 1.5-.4 4-4.4 5-2.2 2-5.3 4-2.6.3-.8 2.3-33.7-4-33.8 4-.9-2.3-2.6-.2-5.2-4.2-2.2-1.9-4.4-5-.5-4-1.6-1.5a29.5 29.5 0 0 1 8-5c4-1.8 8-2.6 10.9-2.6 2 .2 4.4.1 7-.2a32 32 0 0 0 8.6-2.2c4-1.6 9.6-2.6 16.4-2.6z"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.9 231.6c-12.6 0-23.8-1.5-31.9-4-.6 0-.9-.6-.8-1.2a1.2 1.2 0 0 1 .8-1.2 120 120 0 0 1 31.9-4c12.5.1 23.8 1.6 31.8 4 .6.2.9.7.9 1.2 0 .6-.3 1.1-1 1.3a119 119 0 0 1-31.7 4"/>
<path fill="#ad1519" d="M255.8 230a121 121 0 0 1-29.3-3.4c7.8-2 18-3.2 29.3-3.2a123 123 0 0 1 29.5 3.2c-7.8 2-18.1 3.4-29.5 3.4"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M256.7 230v-6.7m-1.9 6.7v-6.7"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M253.1 230v-6.7m-1.7 6.7v-6.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M249.9 230v-6.7m-2.9 6.4v-6.2m1.4 6.2v-6.4"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M244.3 229.4v-5.7m1.4 5.9v-6m-5 5.4v-4.9m1.2 5V224m1.2 5.4V224"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M239.4 229v-4.8m-1.1 4.6v-4.5"/>
<path fill="none" stroke="#000" stroke-width=".6" d="M237 228.7v-4.2m-2.6 3.8V225m1.4 3.5v-3.7"/>
<path fill="none" stroke="#000" stroke-width=".7" d="M233.1 228v-2.9m-1.2 2.7v-2.4"/>
<path fill="none" stroke="#000" stroke-width=".8" d="M230.6 227.5v-2m-1.4 1.8v-1.4"/>
<path fill="none" stroke="#000" stroke-width=".9" d="M227.8 227v-.7"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M264 229.7v-6.2m-3.2 6.4v-6.6m-2.2 6.6v-6.6"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 221.3a115 115 0 0 0-32.2 4c.7-.3.6-1-.2-3.2-1-2.6-2.6-2.5-2.6-2.5a130 130 0 0 1 35-4.3c13.8 0 26.2 1.7 35.1 4.3 0 0-1.5-.1-2.5 2.5-.9 2.1-1 3-.3 3.3-8-2.5-19.6-4.1-32.3-4.1"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 215.3a131 131 0 0 0-35 4.3c-.5.2-1.2 0-1.4-.6a1.1 1.1 0 0 1 .8-1.4c8.9-2.7 21.6-4.4 35.6-4.4 14.1 0 26.9 1.7 35.8 4.4.6.2.9.9.7 1.4-.2.6-.8.8-1.4.6-8.9-2.6-21.3-4.2-35-4.3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".4" d="M255.8 230a121 121 0 0 1-29.3-3.4c7.8-2 18-3.2 29.3-3.2a123 123 0 0 1 29.5 3.2c-7.8 2-18.1 3.4-29.5 3.4z"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M246 218.5c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="M255.9 219.3h-3.4c-.6 0-1.1-.5-1.1-1 0-.6.5-1.1 1-1.1h6.9a1 1 0 0 1 1.1 1c0 .6-.5 1.1-1.1 1.1h-3.4"/>
<path fill="#058e6e" stroke="#000" stroke-width=".4" d="m239 220.2-2.5.3c-.6 0-1.2-.3-1.2-1a1 1 0 0 1 1-1.1l2.4-.3 2.5-.3a1.1 1.1 0 0 1 1.2 1c0 .5-.4 1-1 1.1l-2.5.3"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M229.1 220.4c0-.5.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="m221.6 222.4 1.3-1.7 3.4.5-2.7 2-2-.8"/>
<path fill="#058e6e" stroke="#000" stroke-width=".4" d="m272.8 220.2 2.4.3c.6 0 1.2-.3 1.3-1a1 1 0 0 0-1-1.1l-2.5-.3-2.4-.3c-.7 0-1.2.4-1.3 1 0 .5.4 1 1 1.1l2.5.3"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M263.4 218.5c0-.6.6-1.1 1.2-1.1s1.1.5 1.1 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.2-1m17 2c0-.6.5-1.1 1-1.1a1 1 0 0 1 1.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="m290 222.4-1.2-1.7-3.4.5 2.8 2 1.9-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M225.1 227c8-2.3 18.7-3.6 30.7-3.7 12 0 22.9 1.4 30.8 3.7"/>
<path fill="#c8b100" d="m230.4 196 1.5 1.1 2.1-3.4a7.9 7.9 0 0 1-3.8-7.6c.2-4.5 5.6-8.1 12.5-8.1 3.5 0 6.7 1 9 2.5l.2-1.9a18.6 18.6 0 0 0-9.2-2.3c-8 0-14.1 4.4-14.4 9.8a9.5 9.5 0 0 0 3.3 8l-1.2 2"/>
<path fill="none" stroke="#000" stroke-width=".4" d="m230.4 196 1.5 1.1 2.1-3.4a7.9 7.9 0 0 1-3.8-7.6c.2-4.5 5.6-8.1 12.5-8.1 3.5 0 6.7 1 9 2.5l.2-1.9a18.6 18.6 0 0 0-9.2-2.3c-8 0-14.1 4.4-14.4 9.8a9.5 9.5 0 0 0 3.3 8l-1.2 2"/>
<path fill="#c8b100" d="M230.5 196a9.8 9.8 0 0 1-4.3-7.7c0-3.5 2.2-6.6 5.7-8.6a9.1 9.1 0 0 0-3.6 6.4 9.5 9.5 0 0 0 3.3 8l-1 2"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M230.5 196a9.8 9.8 0 0 1-4.3-7.7c0-3.5 2.2-6.6 5.7-8.6a9.1 9.1 0 0 0-3.6 6.4 9.5 9.5 0 0 0 3.3 8l-1 2"/>
<path fill="#c8b100" d="M206.8 199.6a9.4 9.4 0 0 1-2.5-6.3c0-1.4.4-2.8 1-4 2.1-4.5 9-7.8 17.1-7.8 2.2 0 4.4.2 6.3.7-.4.5-.8 1-1 1.5a27.2 27.2 0 0 0-5.3-.5c-7.4 0-13.6 3-15.4 6.8a7.5 7.5 0 0 0-.8 3.3 7.8 7.8 0 0 0 2.9 6l-2.7 4.4-1.5-1.2 1.9-3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M206.8 199.6a9.4 9.4 0 0 1-2.5-6.3c0-1.4.4-2.8 1-4 2.1-4.5 9-7.8 17.1-7.8 2.2 0 4.4.2 6.3.7-.4.5-.8 1-1 1.5a27.2 27.2 0 0 0-5.3-.5c-7.4 0-13.6 3-15.4 6.8a7.5 7.5 0 0 0-.8 3.3 7.8 7.8 0 0 0 2.9 6l-2.7 4.4-1.5-1.2 1.9-3z"/>
<path fill="#c8b100" d="M209.5 184.8a11.3 11.3 0 0 0-4.2 4.4 9.2 9.2 0 0 0-1 4.1c0 2.4 1 4.6 2.5 6.3l-1.7 2.6a11.1 11.1 0 0 1-2.4-6.8c0-4.3 2.7-8.1 6.8-10.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M209.5 184.8a11.3 11.3 0 0 0-4.2 4.4 9.2 9.2 0 0 0-1 4.1c0 2.4 1 4.6 2.5 6.3l-1.7 2.6a11.1 11.1 0 0 1-2.4-6.8c0-4.3 2.7-8.1 6.8-10.6z"/>
<path fill="#c8b100" d="M255.8 175.4c1.7 0 3.3 1.2 3.7 2.8.2 1.4.4 3 .4 4.7v1.2c0 3.6.6 6.7 1.3 8.7l-5.5 5.2-5.5-5.2c.7-2 1.2-5.1 1.3-8.7v-1.2c0-1.7.2-3.3.5-4.7.3-1.6 2-2.8 3.7-2.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M255.8 175.4c1.7 0 3.3 1.2 3.7 2.8.2 1.4.4 3 .4 4.7v1.2c0 3.6.6 6.7 1.3 8.7l-5.5 5.2-5.5-5.2c.7-2 1.2-5.1 1.3-8.7v-1.2c0-1.7.2-3.3.5-4.7.3-1.6 2-2.8 3.7-2.8z"/>
<path fill="#c8b100" d="M255.8 177a2 2 0 0 1 1.9 1.5 30.6 30.6 0 0 1 .4 4.5v1.1c0 3.4.5 6.4 1.2 8.2l-3.6 3.5-3.6-3.5c.7-1.8 1.2-4.8 1.2-8.2V183c0-1.6.2-3.1.5-4.5.2-.8 1-1.4 2-1.4"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M255.8 177a2 2 0 0 1 1.9 1.5 30.6 30.6 0 0 1 .4 4.5v1.1c0 3.4.5 6.4 1.2 8.2l-3.6 3.5-3.6-3.5c.7-1.8 1.2-4.8 1.2-8.2V183c0-1.6.2-3.1.5-4.5.2-.8 1-1.4 2-1.4z"/>
<path fill="#c8b100" d="m281 196-1.4 1.1-2.2-3.4a7.9 7.9 0 0 0 3.9-7.6c-.2-4.5-5.7-8.1-12.5-8.1a16 16 0 0 0-9 2.5 24.5 24.5 0 0 0-.3-1.9 18.6 18.6 0 0 1 9.3-2.3c7.9 0 14 4.4 14.4 9.8a9.5 9.5 0 0 1-3.3 8l1.1 1.9"/>
<path fill="none" stroke="#000" stroke-width=".4" d="m281 196-1.4 1.1-2.2-3.4a7.9 7.9 0 0 0 3.9-7.6c-.2-4.5-5.7-8.1-12.5-8.1a16 16 0 0 0-9 2.5 24.5 24.5 0 0 0-.3-1.9 18.6 18.6 0 0 1 9.3-2.3c7.9 0 14 4.4 14.4 9.8a9.5 9.5 0 0 1-3.3 8l1.1 1.9"/>
<path fill="#c8b100" d="M280.9 196c2.7-2 4.4-4.7 4.4-7.7 0-3.5-2.3-6.6-5.7-8.6a9 9 0 0 1 3.6 7.3c0 2.8-1.3 5.4-3.3 7.2l1 1.9"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M280.9 196c2.7-2 4.4-4.7 4.4-7.7 0-3.5-2.3-6.6-5.7-8.6a9 9 0 0 1 3.6 7.3c0 2.8-1.3 5.4-3.3 7.2l1 1.9"/>
<path fill="#c8b100" d="M304.7 199.6a9.3 9.3 0 0 0 1.5-10.3c-2.2-4.5-9-7.8-17.2-7.8a28.4 28.4 0 0 0-6.3.7c.5.5.8 1 1.1 1.5a27.1 27.1 0 0 1 5.2-.5c7.5 0 13.7 3 15.5 6.8.5 1 .8 2.1.8 3.3a7.8 7.8 0 0 1-3 6l2.8 4.4 1.4-1.2-1.8-3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M304.7 199.6a9.3 9.3 0 0 0 1.5-10.3c-2.2-4.5-9-7.8-17.2-7.8a28.4 28.4 0 0 0-6.3.7c.5.5.8 1 1.1 1.5a27.1 27.1 0 0 1 5.2-.5c7.5 0 13.7 3 15.5 6.8.5 1 .8 2.1.8 3.3a7.8 7.8 0 0 1-3 6l2.8 4.4 1.4-1.2-1.8-3z"/>
<path fill="#c8b100" d="M302 184.8a11.3 11.3 0 0 1 4.2 4.4 9.3 9.3 0 0 1 1 4.1c0 2.4-1 4.6-2.5 6.3l1.6 2.6a11.1 11.1 0 0 0 2.5-6.8c0-4.3-2.7-8.1-6.9-10.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M302 184.8a11.3 11.3 0 0 1 4.2 4.4 9.3 9.3 0 0 1 1 4.1c0 2.4-1 4.6-2.5 6.3l1.6 2.6a11.1 11.1 0 0 0 2.5-6.8c0-4.3-2.7-8.1-6.9-10.6z"/>
<path fill="#fff" d="M253.8 193.5c0-1 .9-1.9 2-1.9 1 0 1.9.9 1.9 1.9a1.9 1.9 0 0 1-2 1.8 1.9 1.9 0 0 1-2-1.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M253.8 193.5c0-1 .9-1.9 2-1.9 1 0 1.9.9 1.9 1.9a1.9 1.9 0 0 1-2 1.8 1.9 1.9 0 0 1-2-1.8z"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M253.8 189.8a1.9 1.9 0 0 1 2-1.8 1.9 1.9 0 0 1 1.9 1.9 1.9 1.9 0 0 1-2 1.8 1.9 1.9 0 0 1-2-1.8m.5-4c0-.8.7-1.4 1.5-1.4.9 0 1.6.6 1.6 1.5 0 .8-.7 1.4-1.6 1.4-.8 0-1.5-.6-1.5-1.4m.4-3.6c0-.5.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1m.1-3.1c0-.5.4-.9 1-.9s.8.4.8.9-.4.8-.9.8-.9-.3-.9-.8"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="m255.9 204.6 1.3.2a5 5 0 0 0 4.8 6.4 5 5 0 0 0 4.8-3.3s.4-1.7.6-1.7c.2 0 .2 1.9.3 1.9.3 2.4 2.5 4 5 4a4.9 4.9 0 0 0 5-5.4l1.5-1.5.9 2a4.3 4.3 0 0 0-.5 2 4.7 4.7 0 0 0 4.8 4.6 5 5 0 0 0 4-2l1-1.3v1.6c0 1.5.7 3 2.2 3.2 0 0 1.8.1 4.1-1.7a28 28 0 0 0 3.7-3.4l.2 1.9s-2 3-4 4.2c-1.2.7-3 1.4-4.4 1.1-1.5-.2-2.6-1.4-3.1-2.7a7.2 7.2 0 0 1-3.6 1 7 7 0 0 1-6.5-4 7.5 7.5 0 0 1-11-.3 7.4 7.4 0 0 1-5 1.9 7.4 7.4 0 0 1-6.1-3.1 7.3 7.3 0 0 1-6.1 3 7.4 7.4 0 0 1-5-1.8 7.5 7.5 0 0 1-11 .3 7 7 0 0 1-6.5 4 7.1 7.1 0 0 1-3.6-1c-.6 1.3-1.6 2.5-3.1 2.8-1.4.2-3.2-.5-4.3-1.2-2.2-1.2-4.1-4.3-4.1-4.3l.2-1.8s1.3 1.5 3.6 3.4c2.4 1.8 4.2 1.7 4.2 1.7 1.5-.2 2.2-1.7 2.2-3.2v-1.6l1 1.3a4.9 4.9 0 0 0 4 2c2.6 0 4.8-2 4.8-4.6 0-.7-.2-1.4-.5-2l.8-2 1.6 1.5v.6a4.9 4.9 0 0 0 5 4.8c2.5 0 4.7-1.7 5-4 0 0 0-1.9.2-1.9s.7 1.8.7 1.7a5 5 0 0 0 4.8 3.3 4.9 4.9 0 0 0 4.8-6.4l1.3-.2"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M290.5 210.8c.3-.8 0-1.7-.6-1.8-.6-.2-1.4.3-1.6 1.2-.3.8 0 1.7.5 1.8.6.2 1.4-.3 1.7-1.2m-22-4.2c.2-.9-.2-1.6-.9-1.7-.6-.1-1.2.5-1.3 1.4-.1 1 .3 1.7 1 1.8.6 0 1.2-.6 1.3-1.5m-25.4 0c-.1-.9.3-1.6 1-1.7.6-.1 1.2.5 1.3 1.4.1 1-.3 1.7-1 1.8-.6 0-1.2-.6-1.3-1.5m-22 4.3c-.2-.9 0-1.7.7-2 .6-.1 1.3.4 1.6 1.3.3.8 0 1.7-.6 1.9-.6.1-1.3-.4-1.6-1.2"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M230.8 196.3a5.5 5.5 0 0 1 2.4 3s0-.2.7-.6c.6-.3 1.1-.3 1.1-.3l-.2 1.4c-.1.3-.1 1.4-.4 2.3a7.8 7.8 0 0 1-.6 1.8 2 2 0 0 0-1.6-.5 2 2 0 0 0-1.4 1s-.7-.6-1.2-1.4l-1.2-2.2-.7-1.2h1.1c.7.1 1 .3 1 .3a5.2 5.2 0 0 1 1-3.7"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M231.3 206.7a1.9 1.9 0 0 1-.7-1.1 1.7 1.7 0 0 1 .2-1.3l-1.9-.7c-.7-.2-2-.2-2.4-.2h-1.2l.3.6.5.7a5.4 5.4 0 0 0-3 2.2 5.6 5.6 0 0 0 3.6 1l-.2.8v.7l1-.4c.4-.2 1.6-.6 2.2-1 .9-.6 1.6-1.3 1.6-1.3m2.9-.5a1.8 1.8 0 0 0 .2-1.2 1.8 1.8 0 0 0-.7-1.1s.7-.8 1.5-1.3l2.3-1 1-.4v.6l-.2.9a5.6 5.6 0 0 1 3.7 1 5.4 5.4 0 0 1-3.1 2.1 7.1 7.1 0 0 0 .8 1.4h-1.2c-.4 0-1.7 0-2.4-.3-1-.2-2-.7-2-.7"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="M230.3 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 0 1-2.2-2.1"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M255.8 192.9a6 6 0 0 1 2 3.9s.2-.3 1-.6 1.2-.1 1.2-.1l-.5 1.4c-.2.4-.4 1.6-.9 2.6a8.8 8.8 0 0 1-1 1.8 2.3 2.3 0 0 0-1.8-.7c-.6 0-1.3.3-1.7.7 0 0-.6-.7-1-1.8-.5-1-.7-2.2-.9-2.6l-.6-1.4s.6-.1 1.3.2c.8.2 1 .5 1 .5a6 6 0 0 1 2-4"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M254.2 204.6a2 2 0 0 1-.6-1.3c0-.6.2-1 .6-1.4 0 0-1-.7-2-1.1-.8-.4-2.2-.6-2.6-.7l-1.3-.3.1.7.4 1c-1.5 0-2.9.8-3.9 1.8a6.3 6.3 0 0 0 4 1.8l-.5 1-.2.6 1.4-.2 2.6-.7 2-1.2m3.3 0c.3-.3.5-.8.5-1.3a2 2 0 0 0-.5-1.4s1-.7 2-1.1c.8-.4 2.2-.6 2.6-.7l1.3-.3-.2.7a7.6 7.6 0 0 1-.4 1 6 6 0 0 1 4 1.8 6.3 6.3 0 0 1-4 1.8l.4 1 .2.6-1.3-.2-2.6-.7a13 13 0 0 1-2-1.2m23.5-8.4a5.5 5.5 0 0 0-2.4 3.1l-.7-.6c-.6-.3-1.1-.3-1.1-.3l.2 1.4.3 2.3.7 1.8a2 2 0 0 1 1.6-.5 2 2 0 0 1 1.4 1l1.2-1.4 1.2-2.2.7-1.2h-1.2c-.7.1-.9.3-.9.3a5.2 5.2 0 0 0-1-3.7"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M280.5 206.7c.3-.3.6-.7.7-1.1a1.8 1.8 0 0 0-.2-1.3l1.8-.7c.8-.2 2-.2 2.5-.2h1.1l-.2.6-.6.7a5.4 5.4 0 0 1 3.1 2.2 5.6 5.6 0 0 1-3.6 1l.2.8v.7l-1-.4-2.3-1a11.5 11.5 0 0 1-1.5-1.3m-2.9-.5a1.8 1.8 0 0 1-.3-1.2c.1-.5.4-.9.7-1.1 0 0-.7-.8-1.5-1.3-.6-.4-1.8-.9-2.2-1l-1-.4v.6c0 .5.2.9.2.9a5.6 5.6 0 0 0-3.7 1c.7 1 1.8 1.8 3 2.1l-.4.8a4 4 0 0 0-.3.6h1.2c.4 0 1.7 0 2.4-.3 1-.2 1.9-.7 1.9-.7"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="M277 205.3c0-1.2 1-2.1 2.2-2.1 1.3 0 2.3.9 2.3 2 0 1.2-1 2.2-2.3 2.2a2.2 2.2 0 0 1-2.2-2.1m24.8 4.6c-.5-.5-1.6-.4-2.4.3-.8.7-1 1.7-.5 2.2s1.6.5 2.4-.2c.8-.7 1-1.7.5-2.3"/>
<path fill="#c8b100" stroke="#000" stroke-width=".4" d="M298.7 211.3c0-.4.4-.8.7-1.1.8-.7 2-.8 2.4-.3l.2.3s1.2-2.1 2.5-2.9 3.6-.5 3.6-.5a3 3 0 0 0-3.1-3c-1 0-2 .5-2.5 1.2l-.3-1.1s-1.4.3-2 1.8c-.6 1.7 0 4 0 4s-.3-1-.8-1.7a8.5 8.5 0 0 0-2.6-1.7l-1.4-.8v1.5a8.4 8.4 0 0 0-4 .5 5 5 0 0 0 2.7 2.3l-.8.8-.5.5 1.4.2c.4 0 1.8.3 2.7.2a15.7 15.7 0 0 0 1.8-.2m-85.6 0a2.3 2.3 0 0 0-.8-1.1c-.8-.7-1.9-.8-2.4-.3a1.1 1.1 0 0 0-.2.3s-1-2.1-2.4-2.9-3.6-.5-3.6-.5a3 3 0 0 1 3-3c1 0 2 .5 2.6 1.2l.2-1.1s1.4.3 2 1.9c.7 1.6 0 3.9 0 3.9s.4-1 .9-1.7 1.8-1.4 2.5-1.7l1.4-.8a7.4 7.4 0 0 0 0 1.5 8.4 8.4 0 0 1 4 .5 5 5 0 0 1-2.7 2.3l.9.8.4.5-1.3.2c-.4 0-1.9.3-2.7.2a15.7 15.7 0 0 1-1.8-.2"/>
<path fill="#ad1519" stroke="#000" stroke-width=".4" d="M210 210c.5-.6 1.5-.5 2.3.2.9.7 1 1.7.6 2.2-.6.6-1.6.5-2.4-.2-.9-.7-1.1-1.7-.6-2.3m43.7-6.6c0-1.2 1-2.1 2.3-2.1s2.2.9 2.2 2-1 2.2-2.3 2.2a2.2 2.2 0 0 1-2.2-2.1"/>
<path fill="#005bbf" stroke="#000" stroke-width=".3" d="M251.2 171.3c0-2.4 2-4.3 4.6-4.3 2.5 0 4.5 2 4.5 4.3a4.4 4.4 0 0 1-4.5 4.3 4.4 4.4 0 0 1-4.6-4.3"/>
<path fill="#c8b100" stroke="#000" stroke-width=".3" d="M254.6 159.3v2.3H252v2.3h2.5v6.8h-3.2l-.2.6c0 .6.2 1.2.4 1.7h8.3a4.1 4.1 0 0 0 .4-1.7l-.2-.6h-3V164h2.4v-2.3H257v-2.3h-2.5z"/>
<path fill="#ccc" d="M256.2 352.6a87.4 87.4 0 0 1-37.8-8.8 24.2 24.2 0 0 1-13.7-21.6V288h102.8v34c0 9.5-5.4 17.7-13.7 21.8a86.4 86.4 0 0 1-37.6 8.7"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M256.2 352.6a87.4 87.4 0 0 1-37.8-8.8 24.2 24.2 0 0 1-13.7-21.6V288h102.8v34c0 9.5-5.4 17.7-13.7 21.8a86.4 86.4 0 0 1-37.6 8.7z"/>
<path fill="#ccc" d="M256 288h51.5v-57H256v57z"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M256 288h51.5v-57H256v57z"/>
<path fill="#ad1519" d="M256 322.1a25 25 0 0 1-25.6 24.4c-14.2 0-25.8-11-25.8-24.4V288H256v34"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="M215.8 342.3c1.7.8 3.9 2.2 6.2 2.8l-.1-58.3h-6v55.4z"/>
<path fill="#c8b100" stroke="#000" stroke-linejoin="round" stroke-width=".5" d="M204.5 321.7a26 26 0 0 0 6 16v-50.6h-5.9v34.6z"/>
<path fill="#c7b500" stroke="#000" stroke-width=".5" d="M227.3 346.4c2.4.2 4.1.2 6 0v-59.6h-6v59.6z"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="M238.6 345a20.3 20.3 0 0 0 6.2-2.6v-55.6h-6l-.2 58.3z"/>
<path fill="#ad1519" d="M204.6 288H256v-57h-51.4v57z"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M204.6 288H256v-57h-51.4v57z"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="M250.4 337.1c2.5-2.2 4.9-7.3 5.7-13l.2-37.3h-6V337z"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M256 322.1a25 25 0 0 1-25.6 24.4c-14.2 0-25.8-11-25.8-24.4V288H256v34"/>
<path fill="#ad1519" d="M307.6 288v34a25.1 25.1 0 0 1-25.8 24.4c-14.2 0-25.8-11-25.8-24.4v-34h51.6"/>
<path fill="none" stroke="#000" stroke-width=".5" d="M307.6 288v34a25.1 25.1 0 0 1-25.8 24.4c-14.2 0-25.8-11-25.8-24.4v-34h51.6"/>
<path fill="#c8b100" d="m265.4 313.7.1.6c0 .6-.5 1.1-1.2 1.1-.6 0-1.2-.5-1.2-1.1 0-.2 0-.4.2-.5h-1.7a2.7 2.7 0 0 0 1.9 3v4.1h1.7v-4.1a2.7 2.7 0 0 0 1.8-1.7h4.7v-1.4h-6.3m23.1 0v1.4h-4.2a2.7 2.7 0 0 1-.3.6l5 5.6-1.4 1-4.9-5.6-.2.1v9.3h-1.8v-9.3l-.2-.1-5 5.6-1.4-1 5.1-5.7a2.3 2.3 0 0 1-.2-.5h-4.4v-1.4h14zm2.8 0v1.4h4.8c.2.8.9 1.4 1.7 1.7v4.1h1.8v-4.1a2.7 2.7 0 0 0 2-2.5l-.2-.6h-1.6a1.2 1.2 0 0 1-1 1.7c-.8 0-1.3-.5-1.3-1.1l.1-.5h-6.3m-7 23.5a16.6 16.6 0 0 0 3.8-1l.9 1.4a18.8 18.8 0 0 1-4.6 1.3 2.8 2.8 0 0 1-2.8 2 2.8 2.8 0 0 1-2.7-2 18.7 18.7 0 0 1-4.8-1.3l.8-1.5c1.3.6 2.7 1 4.2 1.2a2.7 2.7 0 0 1 1.6-1.5v-7.1h1.8v7.1a3 3 0 0 1 1.7 1.4zm-11.8-2.4-.9 1.5a17.8 17.8 0 0 1-3.9-3.3 3 3 0 0 1-2.6-.5 2.5 2.5 0 0 1-.4-3.7l.2-.2a16.3 16.3 0 0 1-1.4-5.1h1.8a14 14 0 0 0 1.1 4.4 3.1 3.1 0 0 1 1.5.1l4.4-4.8 1.3 1-4.4 4.9a2.5 2.5 0 0 1 0 3 16.2 16.2 0 0 0 3.2 2.7zm-6.5-5a1.2 1.2 0 0 1 1.7-.2 1 1 0 0 1 0 1.6 1.3 1.3 0 0 1-1.6.2 1.1 1.1 0 0 1-.1-1.6zm-2.2-4.8-1.8-.4-.3-4.6 1.8-.6v2.6c0 1 0 2 .2 3zm1.4-5.7 1.8.4v2.3c0-.8.3 2.3.3 2.3l-1.8.6-.3-2.9v-2.7zm6 14.6a16.7 16.7 0 0 0 5.1 2.7l.4-1.7a14.6 14.6 0 0 1-4.3-2.1l-1.2 1m-1 1.6a18.6 18.6 0 0 0 5.2 2.7l-1.3 1.3a20 20 0 0 1-4.2-2.2l.4-1.8m2.3-10 1.7.7 3.2-3.5-1-1.5-3.9 4.2m-1.3-1-1-1.5 3.1-3.5 1.7.7-3.8 4.3m19.3 10.5.9 1.5a17.8 17.8 0 0 0 3.8-3.3c1 .3 2 .1 2.7-.5a2.5 2.5 0 0 0 .3-3.7l-.1-.2c.7-1.6 1.2-3.3 1.3-5.1h-1.7a14.2 14.2 0 0 1-1.2 4.4 3.1 3.1 0 0 0-1.5.1l-4.3-4.8-1.3 1 4.3 4.9a2.5 2.5 0 0 0 .1 3 16 16 0 0 1-3.3 2.7zm6.5-5a1.2 1.2 0 0 0-1.7-.2 1.1 1.1 0 0 0-.1 1.6c.4.5 1.2.6 1.7.1a1 1 0 0 0 0-1.6zm2.2-4.8 1.8-.5.2-4.5-1.7-.6v2.6l-.3 3zm-1.5-5.7-1.8.4v2.3c0-.8-.3 2.3-.3 2.3l1.9.6.2-2.9v-2.7m-6 14.6a16.8 16.8 0 0 1-5 2.7l-.5-1.7a14.6 14.6 0 0 0 4.3-2.1l1.3 1m.9 1.6a18.6 18.6 0 0 1-5.2 2.7l1.3 1.3a20 20 0 0 0 4.3-2.2l-.4-1.8m-2.4-10-1.7.7-3.1-3.5 1-1.5 3.8 4.2m1.4-1 1-1.5-3.2-3.5-1.7.7 3.8 4.3m-21.4-9.3.5 1.7h4.8l.6-1.7h-5.9m22.5 0-.5 1.7h-4.8l-.5-1.7h5.9m-12.4 23.3c0-.6.5-1.1 1.2-1.1.6 0 1.1.5 1.1 1.1 0 .7-.5 1.2-1.2 1.2s-1.2-.6-1.2-1.2zm2-8.2 1.8-.5V325l-1.8-.5v5.6m-1.8 0-1.8-.5V325l1.8-.5v5.6"/>
<path fill="#c8b100" d="M261.6 313.8c.2-1 1-1.7 1.9-2V306h1.7v5.7c.9.3 1.6.9 1.8 1.7h4.7v.3h-6.3a1.2 1.2 0 0 0-1-.6 1.2 1.2 0 0 0-1.1.6h-1.7m13 0v-.3h4.4l.2-.4-5.4-6 1.3-1 5.3 5.8h.3v-8h1.7v7.9h.3l5.2-5.8 1.3 1-5.2 5.9.3.6h4.2v.3h-13.9zm23 0a1.2 1.2 0 0 1 1.1-.6c.5 0 .9.2 1 .6h1.7a2.7 2.7 0 0 0-1.8-2V306h-1.8v5.7a2.7 2.7 0 0 0-1.8 1.7h-4.6v.3h6.3m-32.2-16 6.5 7.3 1.3-1-6.5-7.3.3-.6h4.7v-1.6h-4.7a2.8 2.8 0 0 0-2.7-1.9 2.7 2.7 0 0 0-2.8 2.7c0 1.1.8 2.1 1.9 2.5v5.6h1.7v-5.6h.3zm34 .1v5.6h-1.7v-5.6a2.6 2.6 0 0 1-.4-.2L291 305l-1.3-1 6.5-7.5a2.4 2.4 0 0 1-.1-.3h-4.8v-1.6h4.8a2.8 2.8 0 0 1 2.6-1.9c1.6 0 2.8 1.2 2.8 2.7 0 1.2-.8 2.2-2 2.5zm-17 0v3.4h-1.8V298a2.7 2.7 0 0 1-1.8-1.7h-4.3v-1.6h4.3a2.8 2.8 0 0 1 2.6-1.9c1.3 0 2.3.8 2.7 1.9h4.3v1.6h-4.3a2.7 2.7 0 0 1-1.7 1.7zm-19 4.1-1.8.5v4.6l1.8.5V302m1.8 0 1.8.5v4.6l-1.8.5V302m32.5 0-1.8.5v4.6l1.8.5V302m1.8 0 1.8.5v4.6l-1.8.5V302m-27.3 1 1.7-.8 3.2 3.5-1 1.5-3.9-4.2m-1.3 1-1 1.5 3 3.5 1.8-.7-3.8-4.3m19.7-1.2-1.8-.7-3 3.5 1 1.5 3.8-4.3m1.3 1 1 1.6-3 3.5-1.8-.7 3.8-4.3m-21.7 9.6.5-1.7h4.8l.6 1.7h-5.9m-7-18.1c0-.6.5-1.2 1.1-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm12.8.8-.5 1.7h-4.8l-.5-1.7h5.8m0-1.7-.5-1.7h-4.8l-.5 1.7h5.8m16.7 19-.5-1.7h-4.8l-.5 1.7h5.9m4.6-18.1c0-.6.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm-17.2 0c0-.6.6-1.2 1.2-1.2s1.2.5 1.2 1.2-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm6.7.8.6 1.7h4.8l.5-1.7H287m0-1.6.5-1.8h4.9l.5 1.7H287m-6.3 5.4-1.8.5v4.6l1.8.5v-5.6m1.7 0 1.8.5v4.6l-1.8.5v-5.6"/>
<path fill="none" stroke="#c8b100" stroke-width=".3" d="M284.2 337.3a16.6 16.6 0 0 0 4-1l.8 1.4a18.8 18.8 0 0 1-4.6 1.3 2.8 2.8 0 0 1-2.8 2 2.8 2.8 0 0 1-2.7-2 18.7 18.7 0 0 1-4.8-1.3l.8-1.5c1.3.6 2.7 1 4.2 1.1a2.7 2.7 0 0 1 1.6-1.4v-7.2h1.8v7.2a2.8 2.8 0 0 1 1.7 1.4zm-5-21.7a2.4 2.4 0 0 1-.2-.5h-4.4v-1.6h4.4c0-.2 0-.3.2-.4l-5.4-6 1.3-1 5.3 5.8a2.2 2.2 0 0 1 .3-.1V304h1.7v7.7l.3.1 5.2-5.9 1.3 1-5.2 6 .3.6h4.2v1.6h-4.2l-.3.6 5 5.6-1.4 1-4.9-5.6-.2.1v9.3h-1.8v-9.3l-.2-.1-5 5.6-1.4-1 5.1-5.7m-13.7-17.7 6.5 7.2 1.3-1-6.5-7.3.3-.6h4.7v-1.7h-4.7a2.8 2.8 0 0 0-2.7-1.8 2.7 2.7 0 0 0-2.8 2.7c0 1.1.8 2.1 1.9 2.5v5.5h1.7V298h.3zm7 37-.9 1.5a17.8 17.8 0 0 1-3.9-3.3c-.9.3-1.9.1-2.6-.5a2.5 2.5 0 0 1-.3-3.7v-.2a16.3 16.3 0 0 1-1.3-5.1h1.8a14 14 0 0 0 1.1 4.4 3.1 3.1 0 0 1 1.5.1l4.4-4.8 1.3 1-4.3 4.9a2.5 2.5 0 0 1-.1 3 16.2 16.2 0 0 0 3.3 2.7zm-9-14v-4a2.7 2.7 0 0 1-2-2.6c0-1.2.9-2.2 2-2.6v-5.6h1.7v5.7c.9.2 1.5.9 1.8 1.7h4.7v1.6H267a2.7 2.7 0 0 1-1.8 1.7v4.1h-1.7m2.5 9a1.2 1.2 0 0 1 1.7-.2c.5.4.5 1.1 0 1.6a1.3 1.3 0 0 1-1.6.1 1.1 1.1 0 0 1-.1-1.6zm-2.2-4.9-1.8-.4-.3-4.5 1.8-.6v2.6c0 1 0 2 .3 3zm1.5-5.6 1.7.4a64.3 64.3 0 0 0 .3 4.6l-1.8.6-.3-2.9v-2.7zm5.9 14.6a16.7 16.7 0 0 0 5.1 2.7l.4-1.7a14.6 14.6 0 0 1-4.3-2.2l-1.2 1.2m-1 1.5a18.6 18.6 0 0 0 5.3 2.7l-1.4 1.2a20 20 0 0 1-4.2-2.1l.4-1.8"/>
<path fill="none" stroke="#c8b100" stroke-width=".3" d="m272.6 325.4 1.7.8 3.2-3.5-1-1.5-3.9 4.2m-1.3-1-1-1.5 3.1-3.5 1.7.7-3.8 4.3m-8.2-10.1c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2 0 .6-.5 1.1-1.2 1.1-.6 0-1.2-.5-1.2-1.1zm27.5 20.6.8 1.5a17.8 17.8 0 0 0 4-3.3c.8.3 1.8.1 2.6-.5a2.5 2.5 0 0 0 .3-3.7l-.2-.2c.8-1.6 1.2-3.3 1.4-5.1h-1.7a14.2 14.2 0 0 1-1.2 4.4 3.1 3.1 0 0 0-1.5.1l-4.3-4.8-1.4 1 4.4 4.9a2.5 2.5 0 0 0 .1 3 16 16 0 0 1-3.3 2.7zm9-14v-4.1a2.7 2.7 0 0 0 2-2.5 2.7 2.7 0 0 0-2-2.6v-5.6h-1.8v5.7c-.8.2-1.5.9-1.8 1.7h-4.7v1.6h4.8a2.7 2.7 0 0 0 1.7 1.7v4.1h1.8zm-2.5 9a1.2 1.2 0 0 0-1.7-.2 1.1 1.1 0 0 0-.1 1.6c.4.5 1.1.6 1.7.1a1 1 0 0 0 0-1.6zm2.2-4.8 1.8-.4.2-4.6-1.7-.6v2.6l-.3 3zm-1.5-5.7-1.8.4v2.3c0-.8-.3 2.3-.3 2.3l1.9.6.2-2.9v-2.7m1.8-21.5v5.5h-1.8V298a2.4 2.4 0 0 1-.4-.2L291 305l-1.3-1.1 6.5-7.4a2.5 2.5 0 0 1-.1-.3h-4.8v-1.7h4.8a2.8 2.8 0 0 1 2.6-1.8c1.6 0 2.8 1.2 2.8 2.7 0 1.2-.8 2.2-2 2.5zm-17.2 0v3.4h-1.7v-3.4a2.7 2.7 0 0 1-1.8-1.7h-4.3v-1.7h4.3a2.8 2.8 0 0 1 2.6-1.8c1.3 0 2.3.8 2.7 1.8h4.3v1.7h-4.3a2.7 2.7 0 0 1-1.7 1.7zm9.5 36a16.8 16.8 0 0 1-5.2 2.8l-.4-1.7a14.6 14.6 0 0 0 4.3-2.1l1.3 1m.9 1.6a18.6 18.6 0 0 1-5.2 2.7l1.3 1.3a20 20 0 0 0 4.3-2.2l-.4-1.8M263.5 302l-1.8.5v4.6l1.8.5V302m1.8 0 1.8.5v4.6l-1.8.5V302m32.5 0-1.8.5v4.6l1.8.5V302"/>
<path fill="none" stroke="#c8b100" stroke-width=".3" d="m299.6 302 1.8.5v4.6l-1.8.5V302m-9.2 23.4-1.7.8-3.1-3.5 1-1.5 3.8 4.2m1.3-1 1-1.5-3-3.5-1.8.7 3.8 4.3m-19.4-21.5 1.7-.7 3.1 3.5-1 1.5-3.8-4.3M271 304l-1 1.5 3 3.5 1.8-.8-3.8-4.2m19.7-1.2-1.8-.7-3 3.5 1 1.5 3.8-4.3m1.3 1 1 1.5-3 3.5-1.8-.7 3.8-4.2m-21.7 9.6.5-1.7h4.8l.6 1.7h-5.9m0 1.6.5 1.7h4.8l.6-1.7h-5.9m-7-19.7c0-.7.5-1.2 1.1-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm12.8.8-.5 1.7h-4.8l-.5-1.7h5.8m0-1.7-.5-1.7h-4.8l-.5 1.7h5.8m21.4 19.8c0-.6.5-1.2 1.2-1.2s1.2.5 1.2 1.2c0 .6-.5 1.1-1.2 1.1s-1.2-.5-1.2-1.1zm-4.7-.8-.5-1.7h-4.8l-.5 1.7h5.9m0 1.6-.6 1.7h-4.8l-.5-1.7h5.9m-12.4 23.3c0-.6.5-1.1 1.2-1.1.6 0 1.1.5 1.1 1.1 0 .7-.5 1.2-1.2 1.2s-1.2-.5-1.2-1.2zm2-8.2 1.8-.5V325l-1.8-.5v5.6m-1.8 0-1.8-.5V325l1.8-.5v5.6m16.8-34.8c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm-17.2 0c0-.7.6-1.2 1.2-1.2.7 0 1.2.5 1.2 1.2s-.5 1.1-1.2 1.1c-.6 0-1.2-.5-1.2-1.1zm6.7.8.6 1.7h4.8l.5-1.7H287m0-1.7.6-1.7h4.8l.5 1.7H287m-6.3 5.4-1.8.5v4.5l1.8.5V300m1.7 0 1.8.5v4.5l-1.8.5V300"/>
<path fill="#058e6e" d="M278.8 314.3a2.7 2.7 0 0 1 2.8-2.6c1.6 0 2.8 1.1 2.8 2.6a2.7 2.7 0 0 1-2.8 2.7 2.7 2.7 0 0 1-2.8-2.7"/>
<path fill="#db4446" d="M282.3 245v-.6l.1-.4s-1.6.2-2.5 0a6.3 6.3 0 0 1-2.5-1.4c-.8-.7-1.1-1-1.7-1.2-1.4-.2-2.4.4-2.4.4s1 .4 1.8 1.4a5 5 0 0 0 2 1.5c.6.2 2.7 0 3.3.1l1.9.2"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M282.3 245v-.6l.1-.4s-1.6.2-2.5 0a6.3 6.3 0 0 1-2.5-1.4c-.8-.7-1.1-1-1.7-1.2-1.4-.2-2.4.4-2.4.4s1 .4 1.8 1.4a5 5 0 0 0 2 1.5c.6.2 2.7 0 3.3.1l1.9.2z"/>
<path fill="#ed72aa" stroke="#000" stroke-width=".4" d="M290 242.7v1.4c.1.7-.2 1.3 0 1.7l.2 1c.2.2.3.9.3.9l-.8-.6-.6-.4v1c.1.3.3 1 .6 1.3.3.3.9 1 1 1.4.3.4.2 1.4.2 1.4s-.4-.7-.9-.9l-1.3-.6s.9.8.9 1.6c0 .7-.4 1.6-.4 1.6s-.3-.7-.8-1.1l-1.2-1s.5 1.2.5 2v2.6s-.5-.7-1-1l-1-.8c0-.2.5.7.6 1.2 0 .5.3 2.4 2 4.8 1 1.4 2.4 3.8 5.6 3 3.2-.8 2-5 1.3-7-.6-2-1-4.3-1-5 .1-.8.7-3 .6-3.5a8.5 8.5 0 0 1 .1-3.4c.4-1.3.8-1.9 1-2.4l.5-1.4v-1.4l.8 1.5.1 1.5s.1-1.1 1-1.7c1-.6 2-1.2 2.2-1.5l.4-.5s-.1 2-.7 2.7l-1.8 2.2s.8-.3 1.3-.3h.9s-.7.5-1.5 1.6c-.8 1.2-.5 1.3-1 2.3-.7 1-1.1 1-1.9 1.6-1 1-.5 4.5-.3 5 .1.5 2 4.9 2 6 .1 1 .3 3.3-1.6 4.9-1.2 1-3.1 1-3.6 1.2-.4.3-1.3 1.2-1.3 3s.7 2.1 1.2 2.6c.5.4 1.2.2 1.3.5l.5.8c.2.2.4.5.3.8 0 .4-1 1.3-1.2 2-.3.6-1 2.2-1 2.5 0 .2 0 1 .3 1.4 0 0 .9 1 .2 1.3-.4.1-.8-.3-1-.2l-1 .4c-.3 0-.3-.2-.4-.8l-.1-.7c-.3 0-.4.2-.4.5 0 .2 0 .9-.3.9s-.6-.5-.9-.6c-.2 0-.8-.2-.9-.5 0-.3.4-.9.8-1 .4 0 .8-.3.5-.5-.2-.2-.5-.2-.7 0s-.8 0-.8-.3.1-.7 0-.8c0-.2-.4-.6.2-.9.6-.3.8.3 1.4.2.6-.1 1-.3 1.1-.7.2-.3.2-1-.2-1.5s-.8-.5-1-.8l-.3-1v2.4l-.8-.9c-.3-.3-.6-1.4-.6-1.4v1.4c0 .4.4.7.2.9-.1.1-.8-.8-1-.9-.2-.1-.8-.6-1-1l-.6-1.5c0-.2-.2-1.4 0-1.6l.4-1.2h-1.4c-.8 0-1.3-.2-1.6.3-.3.5-.2 1.6.2 3 .4 1.3.6 2 .5 2.2a4 4 0 0 1-.8 1l-1-.1c-.2-.1-.5-.3-1.2-.3h-1.4c-.3 0-1-.4-1.2-.3-.3 0-.8.3-.7.7.2.6-.2.8-.5.7l-1-.2c-.3-.1-.9 0-.8-.4 0-.5.2-.5.4-.8.2-.3.3-.5 0-.5h-.7c-.2.2-.5.6-.7.5-.3-.2-.5-.5-.5-1.1 0-.7-.7-1.3 0-1.3.6 0 1.4.5 1.5.2.2-.4 0-.5-.3-.8-.3-.3-.7-.5-.3-.8l.8-.6c.2-.1.4-.8.7-.6.7.3 0 .7.7 1.4.6.7 1 1 2.1.9 1-.1 1.4-.3 1.4-.6l-.2-1 .2-1s-.5.3-.6.6l-.5.8v-2.1l-.2-.9-.3 1-.1 1s-.7-.5-.5-1.5v-2.1c.3-.4.9-1.7 2.2-1.8h2.8l2.1-.3s-3-1.5-3.7-2c-.7-.5-1.8-1.7-2.1-2.2-.4-.6-.7-1.6-.7-1.6s-.5 0-1 .3a5.3 5.3 0 0 0-1.3 1l-.7 1v-2s-.4 1.3-1 1.8l-1.5 1.2v-1l.2-1s-.5.8-1.2 1-1.9 0-2 .5c0 .5.2 1.1 0 1.4-.1.4-.5.6-.5.6s-.4-.4-.8-.4-.7.2-.7.2-.4-.4-.2-.7c0-.3.7-.7.5-.9-.1-.1-.6.1-.9.2-.3.2-.9.3-.8-.2 0-.4.2-.7 0-1-.1-.3 0-.6.2-.6.2-.1 1.2 0 1.3-.2 0-.3-.3-.5-.9-.7-.6-.1-.9-.5-.6-.8l.6-.6c.1-.3.2-.8.7-.6.6.3.5.9 1 1 .6.3 2 0 2.3-.1l1.5-1 1.7-1.2-1.1-.8-1-1.1a8.8 8.8 0 0 0-2-.7c-.5 0-1.8-.5-1.8-.5l.8-.3c.2-.2.7-.6.9-.6h.3-1.5c-.3-.2-1-.6-1.3-.6h-.9s.8-.4 1.4-.5l1.2-.1s-1-.3-1.3-.6l-.6-1c-.2-.2-.3-.6-.6-.6s-.9.4-1.2.3c-.3 0-.5-.2-.6-.7v-.5c-.2-.3-.7-.8-.2-1h1.4c.1-.2-.5-.7-.8-1-.4-.1-1-.4-.7-.7l.8-.6c.2-.3.4-1 .8-.7.3.2.9 1.3 1.1 1.2.3-.1.4-.9.3-1.2 0-.3 0-1 .3-.9.3 0 .5.5 1 .5.4 0 1.1-.1 1 .2 0 .4-.3.8-.6 1.1a1.6 1.6 0 0 0-.2 1.6 4 4 0 0 0 1.2 1.5c.4.3 1.3.5 1.8.8.6.4 1.9 1.4 2.3 1.5l.9.3s.5-.2 1.1-.2c.7 0 2.2.1 2.8-.1.6-.3 1.3-.7 1.1-1.2-.2-.5-1.5-1-1.4-1.4.1-.4.6-.4 1.4-.5.8 0 1.8.2 2-1 .2-1 .3-1.6-.8-1.9-1.1-.2-2-.3-2.1-1-.2-.8-.4-1-.2-1.3.2-.2.6-.3 1.5-.3.8-.1 1.7-.1 2-.3.2-.2.3-.7.6-1l1.5-.3s1.5.7 3 1.7c1.2 1 2.3 2.3 2.3 2.3"/>
<path d="m279.3 242-.2-.7-.1-.3s.9 0 .9.2c0 .3-.3.3-.4.4 0 .2-.2.3-.2.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m279.3 242-.2-.7-.1-.3s.9 0 .9.2c0 .3-.3.3-.4.4 0 .2-.2.3-.2.3z"/>
<path d="M283.4 240.5v-.5s.7 0 1.1.3c.6.4 1 1 1 1-.2.2-.6-.2-1-.3h-.4c-.2 0-.3 0-.4-.2v-.3h-.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M283.4 240.5v-.5s.7 0 1.1.3c.6.4 1 1 1 1-.2.2-.6-.2-1-.3h-.4c-.2 0-.3 0-.4-.2v-.3h-.3z"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m289 246.7-.4-.7a8 8 0 0 1-.2-.5"/>
<path fill="#db4446" d="M267.9 241.8s.5.3.8.3l.9.1s.2-.5.1-1c-.2-1.2-1.3-1.4-1.3-1.4s.3.7.1 1c-.2.6-.6 1-.6 1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M267.9 241.8s.5.3.8.3l.9.1s.2-.5.1-1c-.2-1.2-1.3-1.4-1.3-1.4s.3.7.1 1c-.2.6-.6 1-.6 1z"/>
<path fill="#db4446" d="M265.5 242.8s-.4-.8-1.3-.7c-1 .1-1.6.9-1.6.9h1.3c.4.3.5 1 .5 1l.7-.6.4-.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M265.5 242.8s-.4-.8-1.3-.7c-1 .1-1.6.9-1.6.9h1.3c.4.3.5 1 .5 1l.7-.6.4-.6z"/>
<path fill="#db4446" d="M264.4 246s-.8.1-1.2.6c-.5.5-.4 1.5-.4 1.5s.5-.6 1-.6l1.2.2-.3-.9c0-.3-.3-.8-.3-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M264.4 246s-.8.1-1.2.6c-.5.5-.4 1.5-.4 1.5s.5-.6 1-.6l1.2.2-.3-.9c0-.3-.3-.8-.3-.8z"/>
<path d="m279.3 245.9.4-.5.3.5h-.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m279.3 245.9.4-.5.3.5h-.7"/>
<path d="m280.2 245.9.4-.6.4.5h-.8"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m280.2 245.9.4-.6.4.5h-.8"/>
<path d="m279.8 242.5.8.3-.7.4-.1-.7"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m279.8 242.5.8.3-.7.4-.1-.7"/>
<path d="m280.8 242.8.8.2-.6.4-.2-.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m280.8 242.8.8.2-.6.4-.2-.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M275.2 249.2s-.9.3-1.2.7c-.3.6-.3 1.1-.3 1.1s.7-.6 1.6-.3l1.3.3c.4 0 1.3-.4 1.3-.4s-.7.9-.6 1.5c0 .6.2.9.1 1.2 0 .7-.5 1.6-.5 1.6l1-.3a4.9 4.9 0 0 0 1.8-.9l1-1s-.2 1 0 1.5l.2 1.7s.4-.5.8-.7c.2 0 .8-.4 1-.7l.3-1s0 .8.4 1.3c.3.4.7 1.8.7 1.8s.3-.9.6-1.3c.3-.3.7-.8.7-1v-1l.4 1m-11.7.6s.5-.9 1-1.2l1.2-.8 1-.4m1 5.3 1.4-.8a4.2 4.2 0 0 0 1.2-1.2"/>
<path fill="#db4446" d="M267 256.4s-.4-.5-1.2-.3c-.7 0-1.2 1-1.2 1l1-.2c.4.2.6.5.6.5l.5-.4.3-.6"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M267 256.4s-.4-.5-1.2-.3c-.7 0-1.2 1-1.2 1l1-.2c.4.2.6.5.6.5l.5-.4.3-.6z"/>
<path fill="#db4446" d="M266.2 259.4s-.7 0-1.2.4c-.6.4-.6 1.2-.6 1.2s.5-.4 1-.3l.8.2.1-.6c.1-.4-.1-.9-.1-.9"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M266.2 259.4s-.7 0-1.2.4c-.6.4-.6 1.2-.6 1.2s.5-.4 1-.3l.8.2.1-.6c.1-.4-.1-.9-.1-.9z"/>
<path fill="#db4446" d="M267.6 262.2s0 .8.4 1.3c.4.6 1.2.6 1.2.6l-.3-.8c-.1-.4.3-.7.3-.7s-.4-.4-.7-.4h-.8"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M267.6 262.2s0 .8.4 1.3c.4.6 1.2.6 1.2.6l-.3-.8c-.1-.4.3-.7.3-.7s-.4-.4-.7-.4h-.8zm17.1 1.4s2.1 1.3 2 2.4c0 1-1.1 2.4-1.1 2.4"/>
<path fill="#db4446" d="M275.2 269.4s-.5-.6-1.3-.6c-.7 0-1.5.7-1.5.7s1 0 1.2.2l.4.7.6-.3.6-.7"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M275.2 269.4s-.5-.6-1.3-.6c-.7 0-1.5.7-1.5.7s1 0 1.2.2l.4.7.6-.3.6-.7z"/>
<path fill="#db4446" d="M273 272.3s-1-.1-1.5.4-.4 1.4-.4 1.4.6-.7 1-.6c.6 0 1.2.3 1.2.3l-.2-.8a14 14 0 0 0-.2-.7"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M273 272.3s-1-.1-1.5.4-.4 1.4-.4 1.4.6-.7 1-.6c.6 0 1.2.3 1.2.3l-.2-.8a14 14 0 0 0-.2-.7z"/>
<path fill="#db4446" d="M275 275.4s-.5.6-.1 1.1c.3.6 1 .8 1 .8s-.2-.4-.1-.8.7-.8.7-.8l-1.5-.3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M275 275.4s-.5.6-.1 1.1c.3.6 1 .8 1 .8s-.2-.4-.1-.8.7-.8.7-.8l-1.5-.3z"/>
<path fill="#db4446" d="M287.7 276.6s-.8-.2-1.3 0c-.5.3-.8 1.5-.8 1.5s.7-.6 1.3-.6l1 .3v-.8a2.8 2.8 0 0 0-.2-.4"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M287.7 276.6s-.8-.2-1.3 0c-.5.3-.8 1.5-.8 1.5s.7-.6 1.3-.6l1 .3v-.8a2.8 2.8 0 0 0-.2-.4z"/>
<path fill="#db4446" d="M288.1 279.7s-.6.6-.4 1.2a7.3 7.3 0 0 0 .6 1s0-.7.3-1c.3-.3 1-.3 1-.3l-.7-.6-.8-.3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M288.1 279.7s-.6.6-.4 1.2a7.3 7.3 0 0 0 .6 1s0-.7.3-1c.3-.3 1-.3 1-.3l-.7-.6-.8-.3z"/>
<path fill="#db4446" d="M291.3 280.6s-.3.8.3 1.3c.6.6 1.1.6 1.1.6s-.5-.8-.3-1.3c.1-.4.5-.7.5-.7l-.8-.2-.8.3"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M291.3 280.6s-.3.8.3 1.3c.6.6 1.1.6 1.1.6s-.5-.8-.3-1.3c.1-.4.5-.7.5-.7l-.8-.2-.8.3z"/>
<path fill="#ffd691" stroke="#000" stroke-width=".5" d="M258.7 337.5c2.1.6 3.2 2.2 3.2 4 0 2.5-2.3 4.3-5.4 4.3-3 0-5.6-1.8-5.6-4.2 0-1.9 1-4 3.2-4 0 0 0-.3-.3-.6l-.6-.7h1.3l.7.5.6-.7c.3-.4.7-.6.7-.6l.6.7.3.6s.4-.4.8-.5l.9-.3-.3.7-.1.8"/>
<path fill="#058e6e" stroke="#000" stroke-width=".5" d="M256 348.5s-4-2.8-5.8-3.1c-2.3-.5-4.8-.1-5.9-.2l1.9 1.5a11 11 0 0 0 3.5 2c3.3.8 6.3-.2 6.3-.2m1.2.2s2.6-2.7 5.3-3c3.3-.5 5.4.2 6.6.5 0 0-1 .5-1.6 1-.5.3-2 1.5-4.2 1.6-2.2 0-4.7-.3-5.1-.2l-1 .1"/>
<path fill="#ad1519" stroke="#000" stroke-width=".5" d="M256.4 345.4a5.2 5.2 0 0 1 0-7.6 5.2 5.2 0 0 1 1.7 3.8 5.2 5.2 0 0 1-1.7 3.8"/>
<path fill="#058e6e" stroke="#000" stroke-width=".5" d="M255.4 351s.6-1.6.7-3l-.2-2.2h.8s.4 1.2.4 2.2l-.2 2.5-.7.1-.8.3"/>
<path fill="#fff" d="M307 203.4c0-.6.4-1 1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1 1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M307 203.4c0-.6.4-1 1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1 1 0 0 1-1-1z"/>
<path fill="#fff" d="M308.4 200.7c0-.6.6-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M308.4 200.7c0-.6.6-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M309.5 197.6c0-.6.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M309.5 197.6c0-.6.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M309.6 194.2c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1-.7 0-1.2-.4-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M309.6 194.2c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1-.7 0-1.2-.4-1.2-1z"/>
<path fill="#fff" d="M308.8 190.9c0-.6.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M308.8 190.9c0-.6.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M307 187.8c0-.5.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M307 187.8c0-.5.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M304.7 185.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .5-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M304.7 185.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .5-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M302 183.3c0-.6.6-1 1.2-1s1.1.4 1.1 1-.5 1-1.1 1a1 1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M302 183.3c0-.6.6-1 1.2-1s1.1.4 1.1 1-.5 1-1.1 1a1 1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M298.9 181.6c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M298.9 181.6c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M295.5 180.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M295.5 180.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M291.8 179.8c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .7-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M291.8 179.8c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .7-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1z"/>
<path fill="#fff" d="M288.3 179.6c0-.6.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M288.3 179.6c0-.6.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 0 1-1-1z"/>
<path fill="#fff" d="M284.9 179.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M284.9 179.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M281.4 179.7c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M281.4 179.7c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M283.1 182.7c0-.6.5-1.1 1.1-1.1.7 0 1.2.5 1.2 1 0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.2-1m.7 3.2c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1m.2 3.3c0-.6.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1m-1 3c0-.6.4-1.1 1-1.1a1 1 0 0 1 1.2 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.2-1m-1.9 2.7c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="#fff" d="M278.8 177.6c0-.5.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M278.8 177.6c0-.5.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M275.7 176c0-.7.5-1.1 1.1-1.1.7 0 1.2.4 1.2 1s-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M275.7 176c0-.7.5-1.1 1.1-1.1.7 0 1.2.4 1.2 1s-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M272.3 175c0-.7.5-1.1 1.2-1.1.6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M272.3 175c0-.7.5-1.1 1.2-1.1.6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M268.8 174.3c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M268.8 174.3c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 0 1-1-1z"/>
<path fill="#fff" d="M265.4 174.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M265.4 174.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M261.8 175c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M261.8 175c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M258.5 176.1c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M258.5 176.1c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M202.3 203.4c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1.1-1 1.1a1 1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M202.3 203.4c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1.1-1 1.1a1 1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M200.8 200.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M200.8 200.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M199.7 197.6c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M199.7 197.6c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M199.6 194.2c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1c-.6 0-1-.4-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M199.6 194.2c0-.6.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1-1.2 1c-.6 0-1-.4-1-1z"/>
<path fill="#fff" d="M200.4 190.9c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M200.4 190.9c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M202.2 187.8c0-.5.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M202.2 187.8c0-.5.5-1 1-1a1 1 0 0 1 1.2 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M204.5 185.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1.1 1-.6 0-1.1-.4-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M204.5 185.4c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1 0 .5-.5 1-1.1 1-.6 0-1.1-.4-1.1-1z"/>
<path fill="#fff" d="M207.2 183.3c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M207.2 183.3c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1 1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M210.3 181.6c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M210.3 181.6c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M213.7 180.4c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M213.7 180.4c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M217.4 179.8c0-.6.5-1.1 1.1-1.1a1 1 0 0 1 1.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M217.4 179.8c0-.6.5-1.1 1.1-1.1a1 1 0 0 1 1.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M220.9 179.6c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M220.9 179.6c0-.6.5-1 1.1-1 .6 0 1.1.4 1.1 1s-.5 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M224.3 179.7c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M224.3 179.7c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M227.8 179.7c0-.6.5-1 1.1-1 .6 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M227.8 179.7c0-.6.5-1 1.1-1 .6 0 1.2.4 1.2 1s-.5 1-1.2 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" stroke="#000" stroke-width=".4" d="M226 182.7c0-.6.6-1.1 1.2-1.1s1.1.5 1.1 1c0 .6-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1m-.7 3.2c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1c-.6 0-1.1-.4-1.1-1m-.2 3.3c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1m1 3c0-.6.6-1.1 1.2-1.1a1 1 0 0 1 1.1 1c0 .7-.5 1.1-1.1 1.1a1.1 1.1 0 0 1-1.1-1m1.9 2.7c0-.6.5-1 1-1 .7 0 1.2.4 1.2 1s-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="#fff" d="M230.4 177.6c0-.5.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M230.4 177.6c0-.5.5-1 1.1-1 .7 0 1.2.4 1.2 1s-.5 1.1-1.2 1.1a1.1 1.1 0 0 1-1-1z"/>
<path fill="#fff" d="M233.5 176c0-.7.5-1.1 1.1-1.1.6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M233.5 176c0-.7.5-1.1 1.1-1.1.6 0 1.1.4 1.1 1s-.5 1.1-1 1.1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M236.9 175c0-.7.5-1.1 1-1.1s1.2.4 1.2 1-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M236.9 175c0-.7.5-1.1 1-1.1s1.2.4 1.2 1-.5 1-1.1 1a1.1 1.1 0 0 1-1.1-1z"/>
<path fill="#fff" d="M240.4 174.3c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M240.4 174.3c0-.6.5-1 1.1-1a1 1 0 0 1 1.1 1c0 .6-.5 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M243.8 174.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1 1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M243.8 174.4c0-.6.5-1 1.2-1a1 1 0 0 1 1 1c0 .6-.4 1-1 1a1 1 0 0 1-1.2-1z"/>
<path fill="#fff" d="M247.4 175c0-.6.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 0 1-1-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M247.4 175c0-.6.5-1 1.1-1a1 1 0 0 1 1.2 1c0 .6-.5 1-1.2 1a1.1 1.1 0 0 1-1-1z"/>
<path fill="#fff" d="M250.7 176.1c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1"/>
<path fill="none" stroke="#000" stroke-width=".4" d="M250.7 176.1c0-.6.5-1 1.2-1 .6 0 1 .4 1 1s-.4 1-1 1a1.1 1.1 0 0 1-1.2-1z"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="M222.3 244.1h-1v-1h-1.6v3.9h1.6v2.6h-3.5v7.5h1.9v15.2h-3.8v7.8h29v-7.8h-3.7v-15.2h1.9v-7.5h-3.6V247h1.7v-3.8h-1.7v1h-1v-1H237v1h-1.2v-1h-1.6v3.8h1.6v2.6h-3.5v-8.3h1.9v-3.8h-1.9v1h-1v-1h-1.6v1h-1v-1h-1.9v3.8h2v8.3H225V247h1.7v-3.8H225v1h-1v-1h-1.8v1zm-6.4 36h29m-29-1.9h29m-29-1.9h29m-29-1.9h29m-29-2.1h29m-25.2-1.7h21.5m-21.5-1.9h21.5m-21.5-2h21.5m-21.5-2h21.5m-21.5-1.9h21.5m-21.5-1.9h21.5m-21.5-1.9h21.5m-23.4-1.9H243m-25.3-1.8H243m-25.3-2H243m-25.3-1.8H243m-21.8-2h18.2m-10.9-1.8h3.6m-3.5-2h3.5m-3.5-1.8h3.5m-3.5-1.9h3.5m-5.4-2.4h7.3m-12.8 8h3.8m-5.4-2.3h7m-7 34.8v-1.9m0-1.9v-1.9m-2 2v1.8m3.6 0v-1.9m2 3.8v-1.9m0-1.9v-1.9m0-2.1v-1.7m0-1.9v-2m-2 7.7v-2.1m-3.5 2.1v-2.1m7.3 0v2.1m1.7-2.1v-1.7m-5.5-1.9v2m3.8-2v2m3.5-2v2m-1.8-2v-2m1.8-2v2m0-5.8v2m-1.8-3.9v2m1.8-3.8v1.8m-3.5-1.9v2m-3.8-2v2m-1.6-3.8v1.9m3.5-2v2m3.6-2v2m1.9-3.8v1.9m-3.6-2v2m-3.8-2v2m-1.6-3.8v1.9m7-2v2m-3.5-5.7v1.9m16.3-2h-3.7m5.4-2.3H234m7 34.8v-1.9m0-1.9v-1.9m2 2v1.8m-3.6 0v-1.9m-1.9 3.8v-1.9m0-1.9v-1.9m0-2.1v-1.7m0-1.9v-2m2 7.7v-2.1m3.5 2.1v-2.1m-7.3 0v2.1m-1.7-2.1v-1.7m5.4-1.9v2m-3.7-2v2m-3.6-2v2m1.9-2v-2m-1.9-2v2m0-5.8v2m1.9-3.9v2m-1.9-3.8v1.8m3.6-1.9v2m3.8-2v2m1.6-3.8v1.9m-3.5-2v2m-3.6-2v2m-1.9-3.8v1.9m3.6-2v2m3.7-2v2m1.7-3.8v1.9m-7.1-2v2m3.6-5.7v1.9m-7.4 19.1v-2m0-5.8V259m0 5.7v-1.9m0-5.7v-1.8m0-2v-1.8m0-3.8v-2m0-1.8V242m-9 5h3.8m3.6-5.7h3.5m3.6 5.7h3.7"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="M235.3 280.1v-5c0-1-.5-3.8-5-3.8-4.3 0-4.7 2.9-4.7 3.8v5h9.7z"/>
<path fill="#c8b100" stroke="#000" stroke-width=".5" d="m227.2 275.4-2.3-.3c0-1 .2-2.3 1-2.8l2 1.7c-.2.2-.7.9-.7 1.4zm6.4 0 2.4-.3c0-1-.3-2.3-1-2.8l-2 1.7c.1.2.6.9.6 1.4zm-2.4-2.4 1.2-2.1a5.6 5.6 0 0 0-2-.5c-.6 0-1.5.2-2 .5l1.2 2.1h1.6zm-4.4-6v-5c0-1.4-1-2.6-2.6-2.6-1.7 0-2.6 1.2-2.6 2.6v5.2h5.2zm7.3 0v-5c0-1.4 1-2.6 2.6-2.6s2.6 1.2 2.6 2.6v5.2h-5.2zm-1.9-12.7.5-4.7h-4.5l.2 4.7h3.8zm3.5 0-.4-4.7h4.7l-.5 4.7h-3.8zm-10.6 0 .2-4.7h-4.5l.5 4.7h3.8z"/>
<path fill="#0039f0" d="M233.6 280.1v-4.3c0-.7-.4-2.8-3.3-2.8a2.9 2.9 0 0 0-3 2.8v4.3h6.3zm-7.3-13.5v-4.5c0-1.2-.7-2.4-2.1-2.4s-2.2 1.2-2.2 2.4v4.5h4.3zm8.3 0v-4.5c0-1.2.7-2.4 2.1-2.4s2.1 1.2 2.1 2.4v4.5h-4.2z"/>
<path fill="#ad1519" d="M239.5 287.8c0-10.4 7.5-18.8 16.6-18.8s16.7 8.4 16.7 18.7c0 10.4-7.5 18.8-16.7 18.8s-16.6-8.4-16.6-18.7"/>
<path fill="none" stroke="#000" stroke-width=".6" d="M239.5 287.8c0-10.4 7.5-18.8 16.6-18.8s16.7 8.4 16.7 18.7c0 10.4-7.5 18.8-16.7 18.8s-16.6-8.4-16.6-18.7z"/>
<path fill="#005bbf" d="M244.4 287.7c0-7.6 5.3-13.7 11.7-13.7 6.5 0 11.8 6.1 11.8 13.7s-5.3 13.7-11.7 13.7c-6.5 0-11.8-6.1-11.8-13.7"/>
<path fill="none" stroke="#000" stroke-width=".6" d="M244.4 287.7c0-7.6 5.3-13.7 11.7-13.7 6.5 0 11.8 6.1 11.8 13.7s-5.3 13.7-11.7 13.7c-6.5 0-11.8-6.1-11.8-13.7z"/>
<path fill="#c8b100" d="M250.6 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6a1.5 1.5 0 0 0-1.4-1 1.5 1.5 0 0 0-1.6 1.5l.3.8.5 1c.2-.4.5-.6 1-.6.6 0 1 .5 1 1v.3h-1.2v1h1.1l-.8 1.7 1-.4 1 1 .8-1 1 .4-.7-1.6h1v-1.1h-1.2a1 1 0 0 1 0-.3c0-.5.5-1 1-1s1 .2 1 .6l.6-1 .2-.8c0-.8-.6-1.5-1.5-1.5-.7 0-1.2.4-1.4 1 0 0 .5-1.2.5-2.6 0-1.4-1.4-3-1.4-3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M250.6 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6a1.5 1.5 0 0 0-1.4-1 1.5 1.5 0 0 0-1.6 1.5l.3.8.5 1c.2-.4.5-.6 1-.6.6 0 1 .5 1 1v.3h-1.2v1h1.1l-.8 1.7 1-.4 1 1 .8-1 1 .4-.7-1.6h1v-1.1h-1.2a1 1 0 0 1 0-.3c0-.5.5-1 1-1s1 .2 1 .6l.6-1 .2-.8c0-.8-.6-1.5-1.5-1.5-.7 0-1.2.4-1.4 1 0 0 .5-1.2.5-2.6 0-1.4-1.4-3-1.4-3z"/>
<path fill="#c8b100" d="M248.4 287.9h4.5v-1.1h-4.5v1z"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M248.4 287.9h4.5v-1.1h-4.5v1z"/>
<path fill="#c8b100" d="M261.5 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6c-.2-.6-.8-1-1.4-1-.9 0-1.6.7-1.6 1.5l.3.8.5 1c.1-.4.5-.6 1-.6a1 1 0 0 1 1 1 1 1 0 0 1 0 .3h-1.2v1h1.1l-.8 1.7 1-.4.9 1 .9-1 1 .4-.8-1.6h1.1v-1.1h-1.2a.9.9 0 0 1 0-.3c0-.5.5-1 1-1s.9.2 1 .6l.6-1 .2-.8c0-.8-.7-1.5-1.5-1.5-.7 0-1.3.4-1.5 1 0 0 .6-1.2.6-2.6 0-1.4-1.4-3-1.4-3"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M261.5 278.3s-1.4 1.5-1.4 2.9.6 2.6.6 2.6c-.2-.6-.8-1-1.4-1-.9 0-1.6.7-1.6 1.5l.3.8.5 1c.1-.4.5-.6 1-.6a1 1 0 0 1 1 1 1 1 0 0 1 0 .3h-1.2v1h1.1l-.8 1.7 1-.4.9 1 .9-1 1 .4-.8-1.6h1.1v-1.1h-1.2a.9.9 0 0 1 0-.3c0-.5.5-1 1-1s.9.2 1 .6l.6-1 .2-.8c0-.8-.7-1.5-1.5-1.5-.7 0-1.3.4-1.5 1 0 0 .6-1.2.6-2.6 0-1.4-1.4-3-1.4-3z"/>
<path fill="#c8b100" d="M259.3 287.9h4.5v-1.1h-4.5v1z"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M259.3 287.9h4.5v-1.1h-4.5v1z"/>
<path fill="#c8b100" d="M256 287.6s-1.3 1.5-1.3 3c0 1.4.6 2.6.6 2.6a1.5 1.5 0 0 0-1.5-1 1.5 1.5 0 0 0-1.5 1.4l.2.8.5 1c.2-.3.6-.5 1-.5.6 0 1.1.4 1.1 1a1 1 0 0 1 0 .3h-1.2v1h1l-.8 1.7 1.1-.5.9 1 .8-1 1.1.5-.8-1.7h1.1v-1h-1.2a1 1 0 0 1 0-.3c0-.6.4-1 1-1 .5 0 .9.2 1 .5l.5-1c.1-.2.3-.5.3-.8 0-.8-.7-1.4-1.6-1.4a1.5 1.5 0 0 0-1.4 1s.6-1.2.6-2.7c0-1.4-1.4-2.9-1.4-2.9"/>
<path fill="none" stroke="#000" stroke-linejoin="round" stroke-width=".3" d="M256 287.6s-1.3 1.5-1.3 3c0 1.4.6 2.6.6 2.6a1.5 1.5 0 0 0-1.5-1 1.5 1.5 0 0 0-1.5 1.4l.2.8.5 1c.2-.3.6-.5 1-.5.6 0 1.1.4 1.1 1a1 1 0 0 1 0 .3h-1.2v1h1l-.8 1.7 1.1-.5.9 1 .8-1 1.1.5-.8-1.7h1.1v-1h-1.2a1 1 0 0 1 0-.3c0-.6.4-1 1-1 .5 0 .9.2 1 .5l.5-1c.1-.2.3-.5.3-.8 0-.8-.7-1.4-1.6-1.4a1.5 1.5 0 0 0-1.4 1s.6-1.2.6-2.7c0-1.4-1.4-2.9-1.4-2.9z"/>
<path fill="#c8b100" d="M253.8 297.2h4.5v-1h-4.5v1z"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M253.8 297.2h4.5v-1h-4.5v1z"/>
<path fill="#c8b100" d="M289.4 238.3h-.3a1.6 1.6 0 0 1-.3.4c-.3.2-.7.3-.9 0a.5.5 0 0 1-.1-.4.5.5 0 0 1-.5 0c-.3-.1-.4-.5-.2-.8l.1-.2v-.3h-.3l-.1.3c-.3.2-.6.3-.8.1a.6.6 0 0 1-.1-.2h-.2c-.5.2-.7-1-.8-1.3l-.1.3v1.3a7 7 0 0 1-.3 1.2c.8.2 2 .8 3 1.7a9.6 9.6 0 0 1 2.5 2.5l1.2-.6c.6-.2 1.4-.2 1.4-.2l.2-.2c-.3 0-1.6.1-1.6-.4l.1-.2a.7.7 0 0 1-.3 0c-.2-.2-.2-.5 0-.8h.2v-.4h-.3l-.2.1c-.3.3-.7.3-.9 0a.5.5 0 0 1 0-.4.6.6 0 0 1-.6 0 .6.6 0 0 1 0-.9 1.6 1.6 0 0 1 .2-.3v-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M289.4 238.3h-.3a1.6 1.6 0 0 1-.3.4c-.3.2-.7.3-.9 0a.5.5 0 0 1-.1-.4.5.5 0 0 1-.5 0c-.3-.1-.4-.5-.2-.8l.1-.2v-.3h-.3l-.1.3c-.3.2-.6.3-.8.1a.6.6 0 0 1-.1-.2h-.2c-.5.2-.7-1-.8-1.3l-.1.3v1.3a7 7 0 0 1-.3 1.2c.8.2 2 .8 3 1.7a9.6 9.6 0 0 1 2.5 2.5l1.2-.6c.6-.2 1.4-.2 1.4-.2l.2-.2c-.3 0-1.6.1-1.6-.4l.1-.2a.7.7 0 0 1-.3 0c-.2-.2-.2-.5 0-.8h.2v-.4h-.3l-.2.1c-.3.3-.7.3-.9 0a.5.5 0 0 1 0-.4.6.6 0 0 1-.6 0 .6.6 0 0 1 0-.9 1.6 1.6 0 0 1 .2-.3v-.3z"/>
<path d="M287 239h.3s.1.2 0 .2h-.2v-.2"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M287 239h.3s.1.2 0 .2h-.2v-.2z"/>
<path d="m288 239.8-.3-.2v-.2h.2l.3.3.3.2s.1.1 0 .2h-.1l-.4-.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="m288 239.8-.3-.2v-.2h.2l.3.3.3.2s.1.1 0 .2h-.1l-.4-.3"/>
<path d="m286.3 238.6-.3-.2s-.1 0 0-.1h.1l.3.1.2.2.1.1h-.2l-.2-.1"/>
<path fill="none" stroke="#000" stroke-width=".1" d="m286.3 238.6-.3-.2s-.1 0 0-.1h.1l.3.1.2.2.1.1h-.2l-.2-.1"/>
<path d="M285.2 237.9h.2l.1.2h-.2l-.1-.2"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M285.2 237.9h.2l.1.2h-.2l-.1-.2z"/>
<path d="M289.1 240.6v-.3h-.3v.3h.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M289.1 240.6v-.3h-.3v.3h.3z"/>
<path d="m289.7 241.2.2.2c0 .1.2.1.2 0l-.2-.3-.2-.2h-.2v.1l.2.2"/>
<path fill="none" stroke="#000" stroke-width=".1" d="m289.7 241.2.2.2c0 .1.2.1.2 0l-.2-.3-.2-.2h-.2v.1l.2.2"/>
<path d="M290.7 242v-.2h-.3v.3h.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M290.7 242v-.2h-.3v.3h.3z"/>
<path fill="#c8b100" d="M287.9 235.9h-.6l-.2.9.1.1h.2l.7-.5-.2-.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M287.9 235.9h-.6l-.2.9.1.1h.2l.7-.5-.2-.5"/>
<path fill="#c8b100" d="M286.2 236.4v.5l1 .2v-.3l-.5-.7-.5.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M286.2 236.4v.5l1 .2v-.3l-.5-.7-.5.3"/>
<path fill="#c8b100" d="m288.2 237.5-.5.3-.6-.8v-.1h1.1v.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m288.2 237.5-.5.3-.6-.8v-.1h1.1v.6"/>
<path fill="#c8b100" d="M287 236.8a.3.3 0 0 1 .3-.1.3.3 0 0 1 .1.4.3.3 0 0 1-.3 0 .3.3 0 0 1-.2-.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M287 236.8a.3.3 0 0 1 .3-.1.3.3 0 0 1 .1.4.3.3 0 0 1-.3 0 .3.3 0 0 1-.2-.3z"/>
<path fill="#c8b100" d="m284.8 235.9-.3-.8a2 2 0 0 0-.4-.4s.4-.2.9.1c.4.3 0 .9 0 .9l-.2.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m284.8 235.9-.3-.8a2 2 0 0 0-.4-.4s.4-.2.9.1c.4.3 0 .9 0 .9l-.2.2z"/>
<path fill="#c8b100" d="m285.8 236.2-.4.4-.7-.6v-.3h1l.1.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m285.8 236.2-.4.4-.7-.6v-.3h1l.1.5"/>
<path fill="#c8b100" d="m284.6 235.8.3-.2c.1 0 .2.2.1.3 0 .2-.2.3-.3.3 0 0-.1-.2 0-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m284.6 235.8.3-.2c.1 0 .2.2.1.3 0 .2-.2.3-.3.3 0 0-.1-.2 0-.4z"/>
<path fill="#c8b100" d="M290.2 237.3h-.6l-.3.8v.2h.2l.9-.4-.2-.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M290.2 237.3h-.6l-.3.8v.2h.2l.9-.4-.2-.6"/>
<path fill="#c8b100" d="m288.5 237.6-.1.6.9.2h.1v-.2l-.4-.8-.5.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m288.5 237.6-.1.6.9.2h.1v-.2l-.4-.8-.5.2"/>
<path fill="#c8b100" d="m290.3 239-.6.2-.4-.8v-.2h.1l1 .2-.1.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m290.3 239-.6.2-.4-.8v-.2h.1l1 .2-.1.6"/>
<path fill="#c8b100" d="M289.1 238.1c.1-.1.3-.1.4 0a.3.3 0 0 1 .1.4.3.3 0 0 1-.4 0 .3.3 0 0 1 0-.4"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M289.1 238.1c.1-.1.3-.1.4 0a.3.3 0 0 1 .1.4.3.3 0 0 1-.4 0 .3.3 0 0 1 0-.4z"/>
<path fill="#c8b100" d="m292.2 239.2.1.6-.9.3h-.1v-.2l.3-.8.6.1"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m292.2 239.2.1.6-.9.3h-.1v-.2l.3-.8.6.1"/>
<path fill="#c8b100" d="m292 240.8-.5.2-.3-.9v-.1h.2l.8.3-.1.5"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m292 240.8-.5.2-.3-.9v-.1h.2l.8.3-.1.5"/>
<path fill="#c8b100" d="m290.5 239.3-.2.5.9.3h.1v-.1l-.2-.9-.6.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m290.5 239.3-.2.5.9.3h.1v-.1l-.2-.9-.6.2"/>
<path fill="#c8b100" d="M291.5 240.3a.3.3 0 0 0 0-.4.3.3 0 0 0-.5 0 .3.3 0 0 0 0 .3.3.3 0 0 0 .4 0"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M291.5 240.3a.3.3 0 0 0 0-.4.3.3 0 0 0-.5 0 .3.3 0 0 0 0 .3.3.3 0 0 0 .4 0z"/>
<path fill="#c8b100" d="m292.9 242.1.8.1a2 2 0 0 1 .5.3s.1-.5-.3-.8c-.4-.3-.9.2-.9.2l-.1.2"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m292.9 242.1.8.1a2 2 0 0 1 .5.3s.1-.5-.3-.8c-.4-.3-.9.2-.9.2l-.1.2z"/>
<path fill="#c8b100" d="m292.3 241.2-.3.5.8.5v-.1h.2l-.1-1h-.6"/>
<path fill="none" stroke="#000" stroke-width=".3" d="m292.3 241.2-.3.5.8.5v-.1h.2l-.1-1h-.6"/>
<path fill="#c8b100" d="M293 242.2s.2-.2.1-.3h-.4c-.1 0-.2.2-.1.3h.3"/>
<path fill="none" stroke="#000" stroke-width=".3" d="M293 242.2s.2-.2.1-.3h-.4c-.1 0-.2.2-.1.3h.3zm40.7-23.4v.6H331v-.6h1v-1.4h-.7v-.6h.6v-.5h.7v.5h.6v.6h-.6v1.4h1"/>
<path fill="none" d="M179.3 231.6v-1.3m-.3 1.3v-1.3m-.3 1.3v-1.3m-.4 1.3v-1.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M178 231.6v-1.3m-.5 1.2v-1.2m.2 1.2v-1.2m-.7 1.2v-1.1m.2 1v-1m-.9 1v-1m.2 1v-1m.2 1v-1m-.7 1v-1m-.2.9v-.8m-.2.8v-.8m-.6.8v-.7m.3.7v-.7m-.5.6v-.6m-.2.5v-.4m-.3.3v-.3m-.3.3v-.2"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M173.8 231v-.1"/>
<path fill="none" d="M180.8 231.5v-1.2m-.7 1.2v-1.2m-.4 1.3v-1.3m152.6 1.3v-1.3m-.3 1.3v-1.3m-.4 1.3v-1.3m-.4 1.3v-1.3"/>
<path fill="none" stroke="#000" stroke-width=".1" d="M331 231.6v-1.3m-.6 1.2v-1.1m.3 1.1v-1.2m-.8 1.2v-1.1m.2 1.1v-1.2m-.9 1.1v-1m.2 1v-1m.3 1v-1m-.7 1v-1m-.3 1v-.9m-.2.8v-.8m-.5.8v-.7m.2.7v-.7m-.5.6v-.5m-.2.5v-.5m-.3.4v-.4m-.2.3v-.2"/>
<path fill="none" stroke="#000" stroke-width=".2" d="M326.7 231v-.1"/>
<path fill="none" d="M333.7 231.5v-1.2m-.6 1.3v-1.3m-.5 1.3v-1.3"/>
</svg>

After

Width:  |  Height:  |  Size: 92 KiB

7
assets/images/fr.svg Normal file
View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-fr" viewBox="0 0 512 512">
<g fill-rule="evenodd" stroke-width="1pt">
<path fill="#fff" d="M0 0h512v512H0z"/>
<path fill="#002654" d="M0 0h170.7v512H0z"/>
<path fill="#ce1126" d="M341.3 0H512v512H341.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 289 B

7
assets/images/it.svg Normal file
View File

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-it" viewBox="0 0 512 512">
<g fill-rule="evenodd" stroke-width="1pt">
<path fill="#fff" d="M0 0h512v512H0z"/>
<path fill="#009246" d="M0 0h170.7v512H0z"/>
<path fill="#ce2b37" d="M341.3 0H512v512H341.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 289 B

5
assets/images/nl.svg Normal file
View File

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-nl" viewBox="0 0 512 512">
<path fill="#21468b" d="M0 0h512v512H0z"/>
<path fill="#fff" d="M0 0h512v341.3H0z"/>
<path fill="#ae1c28" d="M0 0h512v170.7H0z"/>
</svg>

After

Width:  |  Height:  |  Size: 225 B

View File

Before

Width:  |  Height:  |  Size: 225 B

After

Width:  |  Height:  |  Size: 225 B

View File

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Before

Width:  |  Height:  |  Size: 233 B

After

Width:  |  Height:  |  Size: 233 B

View File

Before

Width:  |  Height:  |  Size: 219 B

After

Width:  |  Height:  |  Size: 219 B

6
assets/images/pl.svg Normal file
View File

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-pl" viewBox="0 0 512 512">
<g fill-rule="evenodd">
<path fill="#fff" d="M512 512H0V0h512z"/>
<path fill="#dc143c" d="M512 512H0V256h512z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 219 B

6
assets/images/uk.svg Normal file
View File

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" id="flag-icons-ua" viewBox="0 0 512 512">
<g fill-rule="evenodd" stroke-width="1pt">
<path fill="gold" d="M0 0h512v512H0z"/>
<path fill="#0057b8" d="M0 0h512v256H0z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 231 B

View File

@ -16,6 +16,7 @@ class DatabaseHelper {
static final columnHost = 'host'; static final columnHost = 'host';
static final columnConfiguration = 'configuration'; static final columnConfiguration = 'configuration';
static final columnLanguage = 'language'; static final columnLanguage = 'language';
static final columnInstanceId = 'instanceId';
DatabaseHelper._privateConstructor(); DatabaseHelper._privateConstructor();
static final DatabaseHelper instance = DatabaseHelper._privateConstructor(); static final DatabaseHelper instance = DatabaseHelper._privateConstructor();
@ -41,7 +42,8 @@ class DatabaseHelper {
$columnDeviceId TEXT NOT NULL, $columnDeviceId TEXT NOT NULL,
$columnHost TEXT NOT NULL, $columnHost TEXT NOT NULL,
$columnConfiguration TEXT, $columnConfiguration TEXT,
$columnLanguage TEXT NOT NULL $columnLanguage TEXT NOT NULL,
$columnInstanceId TEXT NOT NULL
) )
'''); ''');
} }

View File

@ -1,11 +1,14 @@
import 'dart:convert'; import 'dart:convert';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:manager_api/api.dart'; import 'package:manager_api/api.dart';
import 'package:mqtt_client/mqtt_browser_client.dart';
import 'package:mqtt_client/mqtt_client.dart'; import 'package:mqtt_client/mqtt_client.dart';
import 'package:mqtt_client/mqtt_server_client.dart'; import 'package:mqtt_client/mqtt_server_client.dart';
import 'package:tablet_app/Helpers/DeviceInfoHelper.dart'; import 'package:tablet_app/Helpers/DeviceInfoHelper.dart';
import 'package:tablet_app/Models/tabletContext.dart'; import 'package:tablet_app/Models/tabletContext.dart';
import 'package:tablet_app/app_context.dart';
import 'DatabaseHelper.dart'; import 'DatabaseHelper.dart';
@ -18,69 +21,80 @@ class MQTTHelper {
print('Connected !!!!!!!!!!!! ----------------------------------'); print('Connected !!!!!!!!!!!! ----------------------------------');
TabletAppContext tabletAppContext = appContext.getContext(); TabletAppContext tabletAppContext = appContext.getContext();
tabletAppContext.clientMQTT!.updates!.listen((List<MqttReceivedMessage<MqttMessage>> c) async { if(kIsWeb) {
final MqttPublishMessage message = c[0].payload as MqttPublishMessage; tabletAppContext.clientBrowserMQTT!.updates!.listen((List<MqttReceivedMessage<MqttMessage>> c) async {
handleMessage(appContext, c);
});
} else {
tabletAppContext.clientMQTT!.updates!.listen((List<MqttReceivedMessage<MqttMessage>> c) async {
handleMessage(appContext, c);
});
}
}
final payload = MqttPublishPayload.bytesToStringAsString(message.payload.message); Future<void> handleMessage(AppContext appContext, List<MqttReceivedMessage<MqttMessage>> c) async {
print('Received message:$payload from topic: ${c[0].topic}'); TabletAppContext tabletAppContext = appContext.getContext();
final MqttPublishMessage message = c[0].payload as MqttPublishMessage;
var topic = c[0].topic.split('/')[0]; final payload = MqttPublishPayload.bytesToStringAsString(message.payload.message);
print('Received message:$payload from topic: ${c[0].topic}');
switch(topic) { var topic = c[0].topic.split('/')[0];
case "config":
print('Get message in topic config = $payload');
var configId = c[0].topic.split('/')[1];
if (configId != null) {
// Check if tablet config
print("Check if tablet config");
print(tabletAppContext.configuration);
if (tabletAppContext.configuration != null) {
if (tabletAppContext.configuration!.id == configId) {
// refresh config
try {
PlayerMessageDTO playerMessage = PlayerMessageDTO.fromJson(jsonDecode(payload))!;
var isConfigChanged = playerMessage.configChanged != null ? playerMessage.configChanged : false;
var isDeleted = playerMessage.isDeleted != null ? playerMessage.isDeleted : false;
print(isDeleted);
if (isDeleted!) {
// Clear all
print("isDeleted");
tabletAppContext.configuration = null;
appContext.setContext(tabletAppContext);
// UPDATE IT LOCALLY (SQLite)
await DatabaseHelper.instance.update(tabletAppContext);
} else { switch(topic) {
if (isConfigChanged!) { case "config":
updateConfig(appContext); print('Get message in topic config = $payload');
} var configId = c[0].topic.split('/')[1];
if (configId != null) {
// Check if tablet config
print("Check if tablet config");
print(tabletAppContext.configuration);
if (tabletAppContext.configuration != null) {
if (tabletAppContext.configuration!.id == configId) {
// refresh config
try {
PlayerMessageDTO playerMessage = PlayerMessageDTO.fromJson(jsonDecode(payload))!;
var isConfigChanged = playerMessage.configChanged != null ? playerMessage.configChanged : false;
var isDeleted = playerMessage.isDeleted != null ? playerMessage.isDeleted : false;
print(isDeleted);
if (isDeleted!) {
// Clear all
print("isDeleted");
tabletAppContext.configuration = null;
appContext.setContext(tabletAppContext);
// UPDATE IT LOCALLY (SQLite)
await DatabaseHelper.instance.update(tabletAppContext);
} else {
if (isConfigChanged!) {
updateConfig(appContext);
} }
}
} }
catch(e) { catch(e) {
print('Error = $e'); print('Error = $e');
}
} }
} }
} }
break; }
case "player": break;
print('Get message in topic player = $payload'); case "player":
print('Get message in topic player = $payload');
// refresh device info // refresh device info
try { try {
PlayerMessageDTO playerMessage = PlayerMessageDTO.fromJson(jsonDecode(payload))!; PlayerMessageDTO playerMessage = PlayerMessageDTO.fromJson(jsonDecode(payload))!;
var isConfigChanged = playerMessage.configChanged != null ? playerMessage.configChanged : false; var isConfigChanged = playerMessage.configChanged != null ? playerMessage.configChanged : false;
if (isConfigChanged!) { if (isConfigChanged!) {
updateDevice(appContext); updateDevice(appContext);
}
} }
catch(e) { }
print('Error = $e'); catch(e) {
} print('Error = $e');
break; }
} break;
}); }
} }
// unconnected // unconnected
@ -103,25 +117,16 @@ class MQTTHelper {
print('Unsubscribed topic: $topic'); print('Unsubscribed topic: $topic');
} }
Future<MqttServerClient> connect(dynamic appContext) async { Future<dynamic> connect(dynamic appContext) async {
TabletAppContext tabletAppContext = appContext.getContext(); TabletAppContext tabletAppContext = appContext.getContext();
var identifier = await DeviceInfoHelper.getDeviceDetails(); var identifier = kIsWeb ? "Demo Web" : await DeviceInfoHelper.getDeviceDetails();
var hostToTake = tabletAppContext.host; var hostToTake = tabletAppContext.host;
if(tabletAppContext.host!.lastIndexOf(":") > 5) if(tabletAppContext.host!.lastIndexOf(":") > 5)
{ {
hostToTake = tabletAppContext.host!.substring(0,tabletAppContext.host!.lastIndexOf(":")); hostToTake = tabletAppContext.host!.substring(0,tabletAppContext.host!.lastIndexOf(":"));
} }
tabletAppContext.clientMQTT = MqttServerClient.withPort(hostToTake!.replaceAll('http://', ''), 'tablet_app_'+identifier!, 1883);
isInstantiated = true;
tabletAppContext.clientMQTT!.logging(on: false);
tabletAppContext.clientMQTT!.keepAlivePeriod = 20;
tabletAppContext.clientMQTT!.onDisconnected = onDisconnected;
tabletAppContext.clientMQTT!.onConnected = () => onConnected(appContext);
tabletAppContext.clientMQTT!.onSubscribed = onSubscribed;
var message = { var message = {
"deviceId": tabletAppContext.deviceId != null ? tabletAppContext.deviceId : identifier, "deviceId": tabletAppContext.deviceId != null ? tabletAppContext.deviceId : identifier,
"connected": false "connected": false
@ -135,37 +140,85 @@ class MQTTHelper {
.startClean() .startClean()
.withWillQos(MqttQos.atLeastOnce); .withWillQos(MqttQos.atLeastOnce);
tabletAppContext.clientMQTT!.connectionMessage = connMessage; if(kIsWeb) {
tabletAppContext.clientMQTT!.autoReconnect = true; tabletAppContext.clientBrowserMQTT = MqttBrowserClient.withPort(hostToTake!.replaceAll('http://', ''), 'tablet_app_'+identifier!, 1883);
try { tabletAppContext.clientBrowserMQTT!.logging(on: false);
await tabletAppContext.clientMQTT!.connect(); tabletAppContext.clientBrowserMQTT!.keepAlivePeriod = 20;
tabletAppContext.clientBrowserMQTT!.onDisconnected = onDisconnected;
tabletAppContext.clientBrowserMQTT!.onConnected = () => onConnected(appContext);
tabletAppContext.clientBrowserMQTT!.onSubscribed = onSubscribed;
// For get config changed request tabletAppContext.clientBrowserMQTT!.connectionMessage = connMessage;
if(tabletAppContext.configuration != null) { tabletAppContext.clientBrowserMQTT!.autoReconnect = true;
tabletAppContext.clientMQTT!.subscribe('config/#', MqttQos.atLeastOnce); try {
await tabletAppContext.clientBrowserMQTT!.connect();
// For get config changed request
if(tabletAppContext.configuration != null) {
tabletAppContext.clientBrowserMQTT!.subscribe('config/#', MqttQos.atLeastOnce);
}
// For get device assignation config request
if(tabletAppContext.deviceId != null) {
tabletAppContext.clientBrowserMQTT!.subscribe('player/${tabletAppContext.deviceId}', MqttQos.atLeastOnce);
var message = {
"deviceId": tabletAppContext.deviceId,
"connected": true
};
const pubTopic = 'player/status';
final builder = MqttClientPayloadBuilder();
builder.addString(jsonEncode(message));
tabletAppContext.clientBrowserMQTT!.publishMessage(pubTopic, MqttQos.atLeastOnce, builder.payload!);
}
} catch (e) {
print('Exception clientBrowserMQTT: $e');
tabletAppContext.clientBrowserMQTT!.disconnect();
} }
} else {
tabletAppContext.clientMQTT = MqttServerClient.withPort(hostToTake!.replaceAll('http://', ''), 'tablet_app_'+identifier!, 1883);
tabletAppContext.clientMQTT!.logging(on: false);
tabletAppContext.clientMQTT!.keepAlivePeriod = 20;
tabletAppContext.clientMQTT!.onDisconnected = onDisconnected;
tabletAppContext.clientMQTT!.onConnected = () => onConnected(appContext);
tabletAppContext.clientMQTT!.onSubscribed = onSubscribed;
// For get device assignation config request tabletAppContext.clientMQTT!.connectionMessage = connMessage;
if(tabletAppContext.deviceId != null) { tabletAppContext.clientMQTT!.autoReconnect = true;
tabletAppContext.clientMQTT!.subscribe('player/${tabletAppContext.deviceId}', MqttQos.atLeastOnce); try {
await tabletAppContext.clientMQTT!.connect();
var message = { // For get config changed request
"deviceId": tabletAppContext.deviceId, if(tabletAppContext.configuration != null) {
"connected": true tabletAppContext.clientMQTT!.subscribe('config/#', MqttQos.atLeastOnce);
}; }
const pubTopic = 'player/status'; // For get device assignation config request
final builder = MqttClientPayloadBuilder(); if(tabletAppContext.deviceId != null) {
tabletAppContext.clientMQTT!.subscribe('player/${tabletAppContext.deviceId}', MqttQos.atLeastOnce);
builder.addString(jsonEncode(message)); var message = {
tabletAppContext.clientMQTT!.publishMessage(pubTopic, MqttQos.atLeastOnce, builder.payload!); "deviceId": tabletAppContext.deviceId,
"connected": true
};
const pubTopic = 'player/status';
final builder = MqttClientPayloadBuilder();
builder.addString(jsonEncode(message));
tabletAppContext.clientMQTT!.publishMessage(pubTopic, MqttQos.atLeastOnce, builder.payload!);
}
} catch (e) {
print('Exception clientMQTT: $e');
tabletAppContext.clientMQTT!.disconnect();
} }
} catch (e) {
print('Exception: $e');
tabletAppContext.clientMQTT!.disconnect();
} }
return tabletAppContext.clientMQTT!; isInstantiated = true;
return kIsWeb ? tabletAppContext.clientBrowserMQTT : tabletAppContext.clientMQTT!;
} }
Future<void> updateDevice(dynamic appContext) async { Future<void> updateDevice(dynamic appContext) async {

View File

@ -1,5 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:manager_api/api.dart'; import 'package:manager_api/api.dart';
import 'package:mqtt_client/mqtt_browser_client.dart';
import 'package:mqtt_client/mqtt_server_client.dart'; import 'package:mqtt_client/mqtt_server_client.dart';
import 'package:tablet_app/client.dart'; import 'package:tablet_app/client.dart';
import 'dart:convert'; import 'dart:convert';
@ -8,13 +9,15 @@ import 'dart:convert';
class TabletAppContext with ChangeNotifier{ class TabletAppContext with ChangeNotifier{
Client? clientAPI; Client? clientAPI;
MqttServerClient? clientMQTT; MqttServerClient? clientMQTT;
MqttBrowserClient? clientBrowserMQTT;
String? id; String? id;
String? host; String? host;
ConfigurationDTO? configuration; ConfigurationDTO? configuration;
String? language; String? language;
String? deviceId; String? deviceId;
String? instanceId;
TabletAppContext({this.id, this.deviceId, this.host, this.configuration, this.language}); TabletAppContext({this.id, this.deviceId, this.host, this.configuration, this.language, this.instanceId, this.clientAPI});
Map<String, dynamic> toMap() { Map<String, dynamic> toMap() {
return { return {
@ -22,7 +25,8 @@ class TabletAppContext with ChangeNotifier{
'deviceId': deviceId, 'deviceId': deviceId,
'host': host, 'host': host,
'configuration': configuration == null ? null : jsonEncode(configuration!.toJson()), 'configuration': configuration == null ? null : jsonEncode(configuration!.toJson()),
'language': language 'language': language,
'instanceId': instanceId
}; };
} }
@ -32,13 +36,14 @@ class TabletAppContext with ChangeNotifier{
deviceId: json['deviceId'] as String, deviceId: json['deviceId'] as String,
host: json['host'] as String, host: json['host'] as String,
configuration: json['configuration'] == null ? null : ConfigurationDTO.fromJson(json['configuration']), configuration: json['configuration'] == null ? null : ConfigurationDTO.fromJson(json['configuration']),
language: json['language'] as String language: json['language'] as String,
instanceId: json['instanceId'] as String
); );
} }
// Implement toString to make it easier to see information about // Implement toString to make it easier to see information about
@override @override
String toString() { String toString() {
return 'TabletAppContext{id: $id, deviceId: $deviceId, configuration: $configuration, language: $language, host: $host}'; return 'TabletAppContext{id: $id, deviceId: $deviceId, configuration: $configuration, language: $language, host: $host, instanceId: $instanceId, clientAPI: $clientAPI}';
} }
} }

View File

@ -1,9 +1,11 @@
import 'package:device_info/device_info.dart'; import 'package:device_info/device_info.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:fluttertoast/fluttertoast.dart'; import 'package:fluttertoast/fluttertoast.dart';
import 'package:manager_api/api.dart'; import 'package:manager_api/api.dart';
import 'package:mqtt_client/mqtt_browser_client.dart';
import 'package:mqtt_client/mqtt_server_client.dart'; import 'package:mqtt_client/mqtt_server_client.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:tablet_app/Components/Buttons/rounded_button.dart'; import 'package:tablet_app/Components/Buttons/rounded_button.dart';
@ -39,10 +41,10 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
SystemChrome.setEnabledSystemUIOverlays([]); SystemChrome.setEnabledSystemUIOverlays([]);
Size size = MediaQuery.of(context).size; Size size = MediaQuery.of(context).size;
TabletAppContext tabletAppContext = appContext.getContext(); TabletAppContext tabletAppContext = appContext.getContext();
if (tabletAppContext != null) {
if (tabletAppContext.host != null) if (tabletAppContext.host != null)
url = tabletAppContext.host!; url = tabletAppContext.host!;
}
return Scaffold( return Scaffold(
body: Container( body: Container(
height: size.height, height: size.height,
@ -56,48 +58,78 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
future: getConfigurations(appContext), future: getConfigurations(appContext),
builder: (context, AsyncSnapshot<dynamic> snapshot) { builder: (context, AsyncSnapshot<dynamic> snapshot) {
if (snapshot.connectionState == ConnectionState.done) { if (snapshot.connectionState == ConnectionState.done) {
return Center( if (snapshot.data == null || snapshot.data!.length == 0) {
child: Container( return Center(
decoration: BoxDecoration( child: Container(
borderRadius: BorderRadius.circular(29), decoration: BoxDecoration(
color: kBackgroundLight, borderRadius: BorderRadius.circular(29),
), color: kBackgroundLight,
height: size.height*0.3, ),
width: size.width*0.3, height: size.height * 0.2,
child: Column( width: size.width * 0.6,
mainAxisAlignment: MainAxisAlignment.spaceEvenly, child: Center(
crossAxisAlignment: CrossAxisAlignment.center, child: Text(
children: [ "Veuillez créer une configuration dans le manager",
Padding( style: new TextStyle(
padding: const EdgeInsets.only(left: 15, right: 15, top: 15, bottom: 5), fontSize: 25
child: Text( ),
"Choisir une configuration", ),
style: new TextStyle( )
fontSize: 25 )
);
} else {
return Center(
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(29),
color: kBackgroundLight,
),
height: size.height*0.3,
width: size.width*0.6,
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Padding(
padding: const EdgeInsets.only(left: 15, right: 15, top: 15, bottom: 5),
child: Text(
"Choisir une configuration",
style: new TextStyle(
fontSize: 25
),
), ),
), ),
), DropDownConfig(
DropDownConfig( configurations: snapshot.data,
configurations: snapshot.data, onChange: (ConfigurationDTO configurationOut) async {
onChange: (ConfigurationDTO configurationOut) async { if(!kIsWeb) {
// CREATE DEVICE REQUEST // CREATE DEVICE REQUEST
await createDevice(configurationOut, appContext); await createDevice(configurationOut, appContext);
} else {
TabletAppContext tabletAppContext = appContext.getContext();
tabletAppContext.host = url;
tabletAppContext.language = "FR"; // By Default
tabletAppContext.configuration = configurationOut;
print("Set context - WEB");
appContext.setContext(tabletAppContext);
}
Navigator.pushAndRemoveUntil( Navigator.pushAndRemoveUntil(
context, context,
MaterialPageRoute( MaterialPageRoute(
builder: (context) { builder: (context) {
return MainViewWidget(); return MainViewWidget();
}, },
), ),
(Route<dynamic> route) => false // For pushAndRemoveUntil (Route<dynamic> route) => false // For pushAndRemoveUntil
); );
}, },
), ),
], ],
),
), ),
), );
); }
} else if (snapshot.connectionState == ConnectionState.none) { } else if (snapshot.connectionState == ConnectionState.none) {
return Text("No data"); return Text("No data");
} else { } else {
@ -115,8 +147,9 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
borderRadius: BorderRadius.circular(29), borderRadius: BorderRadius.circular(29),
color: kBackgroundLight, color: kBackgroundLight,
), ),
constraints: BoxConstraints(maxWidth: 500, minWidth: 450),
height: size.height*0.3, height: size.height*0.3,
width: size.width*0.3, width: size.width*0.6,
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly, mainAxisAlignment: MainAxisAlignment.spaceEvenly,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
@ -160,15 +193,24 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
textColor: Colors.white, textColor: Colors.white,
fontSize: 16.0 fontSize: 16.0
); );
TabletAppContext tabletAppContext = new TabletAppContext();
tabletAppContext.host = url;
tabletAppContext.clientAPI = client;
// Add if web TODO TabletAppContext? tabletAppContext = appContext.getContext();
//var identifier = await DeviceInfoHelper.getDeviceDetails(); if(tabletAppContext == null) {
var identifier = "WEB TEST"; TabletAppContext tabletAppContext = new TabletAppContext();
// TODO WEB ! tabletAppContext.host = url;
// tabletAppContext.clientMQTT = new MqttServerClient(url.replaceAll('http://', ''),'tablet_app_'+identifier); }
tabletAppContext!.clientAPI = client;
var identifier = kIsWeb ? "WEB TEST" : await DeviceInfoHelper.getDeviceDetails();
if(kIsWeb) {
tabletAppContext.clientBrowserMQTT = new MqttBrowserClient(url.replaceAll('http://', ''),'tablet_app_'+ identifier!);
} else
{
// mobile specific
tabletAppContext!.clientMQTT = new MqttServerClient(url.replaceAll('http://', ''),'tablet_app_'+ identifier!);
}
setState(() { setState(() {
appContext.setContext(tabletAppContext); appContext.setContext(tabletAppContext);
configOk = true; configOk = true;
@ -201,16 +243,18 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
DeviceDetailDTO newDevice = new DeviceDetailDTO(); DeviceDetailDTO newDevice = new DeviceDetailDTO();
newDevice.configurationId = configurationDTO.id; newDevice.configurationId = configurationDTO.id;
newDevice.configuration = configurationDTO.label; newDevice.configuration = configurationDTO.label;
newDevice.instanceId = tabletAppContext.instanceId;
newDevice.connected = true; newDevice.connected = true;
//newDevice.identifier = await DeviceInfoHelper.getDeviceDetails(); // TODO WEB newDevice.identifier = await DeviceInfoHelper.getDeviceDetails(); // TODO WEB
//newDevice.ipAddressWLAN = await getIP(true); newDevice.ipAddressWLAN = await getIP(true);
//newDevice.ipAddressETH = await getIP(false); newDevice.ipAddressETH = await getIP(false);
//newDevice.name = newDevice.ipAddressWLAN; newDevice.name = newDevice.ipAddressWLAN;
newDevice.name = "WEB TEST";
print(newDevice); print(newDevice);
DeviceDetailDTO? device = await tabletAppContext.clientAPI!.deviceApi!.deviceCreate(newDevice); DeviceDetailDTO? device = await tabletAppContext.clientAPI!.deviceApi!.deviceCreate(newDevice);
print("DEVICE RESSSULT");
print(device);
if (device != null) { if (device != null) {
// STORE IT LOCALLY !! // STORE IT LOCALLY !!
@ -220,8 +264,10 @@ class _ConfigViewWidget extends State<ConfigViewWidget> {
tabletAppContext.host = url; tabletAppContext.host = url;
tabletAppContext.language = "FR"; // By Default tabletAppContext.language = "FR"; // By Default
tabletAppContext.configuration = configurationDTO; tabletAppContext.configuration = configurationDTO;
appContext.setContext(tabletAppContext);
print("Set context");
appContext.setContext(tabletAppContext);
// STORE IT LOCALLY (SQLite) // STORE IT LOCALLY (SQLite)
TabletAppContext localContext = await DatabaseHelper.instance.getData(); TabletAppContext localContext = await DatabaseHelper.instance.getData();
if (localContext != null) { // Check if sql DB exist if (localContext != null) { // Check if sql DB exist
@ -302,12 +348,14 @@ boxDecoration(SectionDTO section) {
); );
} }
Future<List<ConfigurationDTO>> getConfigurations(dynamic appContext) async { Future<List<ConfigurationDTO>?> getConfigurations(dynamic appContext) async {
TabletAppContext tabletAppContext = (appContext.getContext() as TabletAppContext);
List<ConfigurationDTO> configurations = await appContext.getContext().clientAPI.configurationApi.configurationGet(); print(tabletAppContext);
print("number of configurations " + configurations.length.toString()); List<ConfigurationDTO>? configurations = await tabletAppContext.clientAPI!.configurationApi!.configurationGet(instanceId: tabletAppContext.instanceId);
print("number of configurations " + configurations!.length.toString());
configurations.forEach((element) { configurations.forEach((element) {
print(element); //print(element);
}); });
return configurations;
return configurations.where((config) => config.isTablet!).toList();
} }

View File

@ -5,11 +5,11 @@ import 'package:tablet_app/app_context.dart';
import 'package:tablet_app/constants.dart'; import 'package:tablet_app/constants.dart';
class DropDownConfig extends StatefulWidget { class DropDownConfig extends StatefulWidget {
final List<ConfigurationDTO>? configurations; final List<ConfigurationDTO> configurations;
final ValueChanged<ConfigurationDTO>? onChange; final ValueChanged<ConfigurationDTO>? onChange;
const DropDownConfig({ const DropDownConfig({
Key? key, Key? key,
this.configurations, required this.configurations,
this.onChange, this.onChange,
}) : super(key: key); }) : super(key: key);
@ -18,14 +18,15 @@ class DropDownConfig extends StatefulWidget {
} }
class _DropDownConfigState extends State<DropDownConfig> { class _DropDownConfigState extends State<DropDownConfig> {
ConfigurationDTO configurationDTO = ConfigurationDTO(); ConfigurationDTO? selectedConfigurationDTO;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final appContext = Provider.of<AppContext>(context); /*final appContext = Provider.of<AppContext>(context);
Size size = MediaQuery.of(context).size; Size size = MediaQuery.of(context).size;*/
return DropdownButton<ConfigurationDTO>( return DropdownButton<ConfigurationDTO>(
value: configurationDTO, value: selectedConfigurationDTO,
icon: const Icon(Icons.arrow_downward), icon: const Icon(Icons.arrow_downward),
iconSize: 24, iconSize: 24,
elevation: 16, elevation: 16,
@ -36,11 +37,11 @@ class _DropDownConfigState extends State<DropDownConfig> {
), ),
onChanged: (ConfigurationDTO? newValue) { onChanged: (ConfigurationDTO? newValue) {
setState(() { setState(() {
configurationDTO = newValue!; selectedConfigurationDTO = newValue!;
widget.onChange!(configurationDTO); widget.onChange!(selectedConfigurationDTO!);
}); });
}, },
items: widget.configurations!.map<DropdownMenuItem<ConfigurationDTO>>((ConfigurationDTO value) { items: widget.configurations.map<DropdownMenuItem<ConfigurationDTO>>((ConfigurationDTO value) {
return DropdownMenuItem<ConfigurationDTO>( return DropdownMenuItem<ConfigurationDTO>(
value: value, value: value,
child: Text(value.label!, style: TextStyle(fontSize: 20, fontWeight: FontWeight.w400)), child: Text(value.label!, style: TextStyle(fontSize: 20, fontWeight: FontWeight.w400)),

View File

@ -1,8 +1,10 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:tablet_app/Models/tabletContext.dart'; import 'package:tablet_app/Models/tabletContext.dart';
import 'package:tablet_app/app_context.dart'; import 'package:tablet_app/app_context.dart';
import 'package:tablet_app/constants.dart'; import 'package:tablet_app/constants.dart';
import 'package:flutter_svg_provider/flutter_svg_provider.dart';
import 'package:webview_flutter/webview_flutter.dart'; import 'package:webview_flutter/webview_flutter.dart';
class LanguageSelection extends StatefulWidget { class LanguageSelection extends StatefulWidget {
@ -31,14 +33,14 @@ class _LanguageSelection extends State<LanguageSelection> with TickerProviderSta
@override @override
void initState() { void initState() {
setState(() { setState(() {
_leftLanguage = sizeScreen.width - (sizeScreen.width *0.07); //size.width - size.width *0.07; _leftLanguage = kIsWeb ? sizeScreen.width - (sizeScreen.width *0.07) : sizeScreen.width - (sizeScreen.width *0.07); //size.width - size.width *0.07;
_topLanguage = sizeScreen.height * 0.075; _topLanguage = kIsWeb ? sizeScreen.height * 0.07 : sizeScreen.height * 0.075;
_rightLanguage = 0; _rightLanguage = 0;
_bottomLanguage = minimized ? sizeScreen.height*0.6 : sizeScreen.height - (sizeScreen.height *0.07); _bottomLanguage = minimized ? (kIsWeb ? sizeScreen.height*0.8 : sizeScreen.height*0.6) : (kIsWeb ? sizeScreen.height - (sizeScreen.height *0.45) : sizeScreen.height - (sizeScreen.height *0.07));
}); });
_controller = AnimationController( _controller = AnimationController(
value: 12, vsync: this, duration: Duration(seconds: 1)); value: 12, vsync: this, duration: Duration(seconds: 5));
_controller!.animateBack(0); _controller!.animateBack(0);
super.initState(); super.initState();
@ -54,6 +56,7 @@ class _LanguageSelection extends State<LanguageSelection> with TickerProviderSta
Widget build(BuildContext context) { Widget build(BuildContext context) {
final appContext = Provider.of<AppContext>(context); final appContext = Provider.of<AppContext>(context);
Size size = MediaQuery.of(context).size; Size size = MediaQuery.of(context).size;
selectedLanguage = (appContext.getContext() as TabletAppContext).language; selectedLanguage = (appContext.getContext() as TabletAppContext).language;
languagesEnable = (appContext.getContext() as TabletAppContext).configuration!.languages; languagesEnable = (appContext.getContext() as TabletAppContext).configuration!.languages;
@ -77,41 +80,36 @@ class _LanguageSelection extends State<LanguageSelection> with TickerProviderSta
) )
), ),
AnimatedPositioned( AnimatedPositioned(
duration: const Duration(milliseconds: 1500), duration: const Duration(seconds: 5),
curve: Curves.fastLinearToSlowEaseIn, curve: Curves.fastLinearToSlowEaseIn,
top: _topLanguage, top: _topLanguage,
left: _leftLanguage, left: _leftLanguage,
right: _rightLanguage, right: _rightLanguage,
bottom: _bottomLanguage, bottom: _bottomLanguage,
child: Container( child: ListView(
child: children: [
ListView( if(minimized) ... [
children: [ for(var language in languagesEnable!.where((element) => element.toUpperCase() != selectedLanguage ))
if(minimized) ... [ InkWell(
for(var language in languagesEnable!.where((element) => element.toUpperCase() != selectedLanguage )) onTap: () {
InkWell( setState(() {
onTap: () { TabletAppContext tabletAppContext = appContext.getContext();
setState(() { tabletAppContext.language = language;
// TODO STORE IT LOCALLY !! appContext.setContext(tabletAppContext);
TabletAppContext tabletAppContext = appContext.getContext(); minimizedAnimation(size);
tabletAppContext.language = language; });
appContext.setContext(tabletAppContext); },
minimizedAnimation(size); child: Padding(
}); padding: const EdgeInsets.all(8.0),
}, child: Container(
child: Padding( width: sizeScreen.height *0.07,
padding: const EdgeInsets.all(8.0), height: kIsWeb ? sizeScreen.height *0.015 : sizeScreen.width *0.07,
child: Container( decoration: flagDecoration(language),
width: sizeScreen.height *0.07,
height: sizeScreen.width *0.07,
decoration: flagDecoration(language),
),
), ),
) ),
] )
], ]
) ],
,
), ),
), ),
], ],
@ -120,16 +118,17 @@ class _LanguageSelection extends State<LanguageSelection> with TickerProviderSta
minimizedAnimation(Size size) { minimizedAnimation(Size size) {
minimized = !minimized; minimized = !minimized;
print(_controller);
if (minimized) { if (minimized) {
_controller!.animateBack(15.0); _controller!.animateBack(15.0);
} else { } else {
_controller!.animateBack(0.0); _controller!.animateBack(0.0);
} }
setState(() { setState(() {
_leftLanguage = size.width - (size.width *0.07); //size.width - size.width *0.07; _leftLanguage = kIsWeb ? size.width - (size.width *0.07) : size.width - (size.width *0.07); //size.width - size.width *0.07;
_topLanguage = sizeScreen.height * 0.07; _topLanguage = kIsWeb ? sizeScreen.height * 0.06 : sizeScreen.height * 0.07;
_rightLanguage = 0; _rightLanguage = 0;
_bottomLanguage = minimized ? size.height*0.6 : size.height - (size.height *0.07); _bottomLanguage = minimized ? (kIsWeb ? size.height*0.2 : size.height*0.6) : (kIsWeb ? size.height - (size.height *0.07) : size.height - (size.height *0.07));
}); });
} }
@ -138,9 +137,11 @@ class _LanguageSelection extends State<LanguageSelection> with TickerProviderSta
color: kBackgroundColor, color: kBackgroundColor,
shape: BoxShape.circle, shape: BoxShape.circle,
//border: Border.all(width: 1.5, color: kSecondGrey), //border: Border.all(width: 1.5, color: kSecondGrey),
image: new DecorationImage( image: DecorationImage(
fit: BoxFit.contain, fit: BoxFit.contain,
image: new AssetImage("assets/images/"+language+".png"), image: Svg(
"assets/images/"+language.toLowerCase()+".svg",
), //AssetImage("assets/images/"+language+".png"),
), ),
boxShadow: [ boxShadow: [
BoxShadow( BoxShadow(

View File

@ -1,3 +1,4 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart'; import 'package:flutter/rendering.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
@ -45,6 +46,7 @@ class _MainViewWidget extends State<MainViewWidget> {
if(sectionSelected != null) { if(sectionSelected != null) {
var elementToShow; var elementToShow;
print(sectionSelected!.type);
switch (sectionSelected!.type) { switch (sectionSelected!.type) {
case SectionType.map : // MAP case SectionType.map : // MAP
elementToShow = ChangeNotifierProvider<MapContext>( elementToShow = ChangeNotifierProvider<MapContext>(
@ -90,7 +92,7 @@ class _MainViewWidget extends State<MainViewWidget> {
children: [ children: [
Container( Container(
width: size.width, width: size.width,
height: size.height * 0.12, color: Colors.pink,
child: Row( child: Row(
children: [ children: [
Padding( Padding(
@ -128,7 +130,7 @@ class _MainViewWidget extends State<MainViewWidget> {
alignment: Alignment.centerLeft, alignment: Alignment.centerLeft,
child: AutoSizeText( child: AutoSizeText(
sectionSelected!.description!.firstWhere((translation) => translation.language == appContext.getContext().language).value!, sectionSelected!.description!.firstWhere((translation) => translation.language == appContext.getContext().language).value!,
style: new TextStyle(fontSize: kSectionDescriptionDetailSize), style: new TextStyle(fontSize: kIsWeb? kWebSectionDescriptionDetailSize : kSectionDescriptionDetailSize),
maxLines: 2, maxLines: 2,
), ),
) )
@ -167,18 +169,21 @@ class _MainViewWidget extends State<MainViewWidget> {
), ),
), ),
floatingActionButtonLocation: FloatingActionButtonLocation.endTop, floatingActionButtonLocation: FloatingActionButtonLocation.endTop,
floatingActionButton: Container( floatingActionButton: Padding(
height: 185.0, padding: const EdgeInsets.only(top: kIsWeb ? 16.0 : 0.0),
width: 185.0, child: Container(
child: FittedBox( height: kIsWeb ? size.height *0.08 : 185.0,
child: FloatingActionButton.extended( width: kIsWeb ? size.width *0.08: 185.0,
onPressed: () { child: FittedBox(
setState(() { child: FloatingActionButton.extended(
sectionSelected = null; onPressed: () {
}); setState(() {
}, sectionSelected = null;
icon: Icon(Icons.arrow_back), });
label: Text("Menu") },
icon: Icon(Icons.arrow_back),
label: Text("Menu")
),
), ),
), ),
), ),
@ -194,7 +199,7 @@ class _MainViewWidget extends State<MainViewWidget> {
if (appContext.getContext().configuration != null) LanguageSelection(), if (appContext.getContext().configuration != null) LanguageSelection(),
Center( Center(
child: Container( child: Container(
height: size.height * 0.85, height: kIsWeb ? size.height : size.height * 0.85,
width: size.width * 0.9, width: size.width * 0.9,
child: FutureBuilder( child: FutureBuilder(
future: getSections(appContext), future: getSections(appContext),
@ -205,50 +210,52 @@ class _MainViewWidget extends State<MainViewWidget> {
return Text(""); return Text("");
} }
else { else {
return GridView.builder( return Center(
shrinkWrap: true, child: GridView.builder(
gridDelegate: new SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: rowCount), shrinkWrap: true,
itemCount: snapshot.data?.length, gridDelegate: new SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: rowCount),
itemBuilder: (BuildContext context, int index) { itemCount: snapshot.data?.length,
return InkWell( itemBuilder: (BuildContext context, int index) {
onTap: () { return InkWell(
setState(() { onTap: () {
sectionSelected = snapshot.data[index]; setState(() {
}); sectionSelected = snapshot.data[index];
}, });
child: Container( },
decoration: boxDecoration(snapshot.data[index], false), child: Container(
padding: const EdgeInsets.all(25), decoration: boxDecoration(snapshot.data[index], false),
margin: EdgeInsets.symmetric(vertical: 25, horizontal: 25), padding: const EdgeInsets.all(25),
child: Align( margin: EdgeInsets.symmetric(vertical: 25, horizontal: 25),
alignment: Alignment.bottomRight, child: Align(
child: FractionallySizedBox( alignment: Alignment.bottomRight,
heightFactor: 0.4, child: FractionallySizedBox(
child: Column( heightFactor: 0.4,
children: [ child: Column(
Align( children: [
alignment: Alignment.centerRight, Align(
child: AutoSizeText( alignment: Alignment.centerRight,
snapshot.data[index].title.firstWhere((translation) => translation.language == appContext.getContext().language).value, child: AutoSizeText(
style: new TextStyle(fontSize: kMenuTitleDetailSize), snapshot.data[index].title.firstWhere((translation) => translation.language == appContext.getContext().language).value,
maxLines: 1, style: new TextStyle(fontSize: kIsWeb ? kWebMenuTitleDetailSize: kMenuTitleDetailSize),
maxLines: 1,
),
), ),
), Align(
Align( alignment: Alignment.centerRight,
alignment: Alignment.centerRight, child: AutoSizeText(
child: AutoSizeText( snapshot.data[index].description.firstWhere((translation) => translation.language == appContext.getContext().language).value,
snapshot.data[index].description.firstWhere((translation) => translation.language == appContext.getContext().language).value, style: new TextStyle(fontSize: kIsWeb ? kWebMenuDescriptionDetailSize: kMenuDescriptionDetailSize, fontFamily: ""),
style: new TextStyle(fontSize: kMenuDescriptionDetailSize, fontFamily: ""), maxLines: 1,
maxLines: 1, ),
), ),
), ],
], )
) ),
), ),
), ),
), );
); }
} ),
); );
} }
} else if (snapshot.connectionState == ConnectionState.none) { } else if (snapshot.connectionState == ConnectionState.none) {
@ -275,6 +282,9 @@ class _MainViewWidget extends State<MainViewWidget> {
try { try {
List<SectionDTO>? sections = await tabletAppContext.clientAPI!.sectionApi!.sectionGetFromConfiguration(tabletAppContext.configuration!.id!); List<SectionDTO>? sections = await tabletAppContext.clientAPI!.sectionApi!.sectionGetFromConfiguration(tabletAppContext.configuration!.id!);
sections!.sort((a, b) => a.order!.compareTo(b.order!)); sections!.sort((a, b) => a.order!.compareTo(b.order!));
print("Sections");
print(sections);
return sections; return sections;
} catch (e) { } catch (e) {
print(e); print(e);
@ -298,7 +308,7 @@ boxDecoration(SectionDTO section, bool isSelected) {
shape: BoxShape.rectangle, shape: BoxShape.rectangle,
borderRadius: BorderRadius.circular(30.0), borderRadius: BorderRadius.circular(30.0),
image: section.imageSource != null ? new DecorationImage( image: section.imageSource != null ? new DecorationImage(
fit: !isSelected? BoxFit.cover : BoxFit.contain, fit: !isSelected || kIsWeb ? BoxFit.cover : BoxFit.contain,
colorFilter: !isSelected? new ColorFilter.mode(Colors.black.withOpacity(0.5), BlendMode.dstATop) : null, colorFilter: !isSelected? new ColorFilter.mode(Colors.black.withOpacity(0.5), BlendMode.dstATop) : null,
image: new NetworkImage( image: new NetworkImage(
section.imageSource!, section.imageSource!,

View File

@ -1,5 +1,6 @@
import 'dart:convert'; import 'dart:convert';
import 'package:auto_size_text/auto_size_text.dart'; import 'package:auto_size_text/auto_size_text.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:manager_api/api.dart'; import 'package:manager_api/api.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
@ -159,7 +160,7 @@ class _MenuViewWidget extends State<MenuViewWidget> {
alignment: Alignment.centerRight, alignment: Alignment.centerRight,
child: AutoSizeText( child: AutoSizeText(
menuDTO.sections![index].title!.firstWhere((translation) => translation.language == appContext.getContext().language).value!, menuDTO.sections![index].title!.firstWhere((translation) => translation.language == appContext.getContext().language).value!,
style: new TextStyle(fontSize: kMenuTitleDetailSize), style: new TextStyle(fontSize: kIsWeb? kWebMenuTitleDetailSize : kMenuTitleDetailSize),
maxLines: 1, maxLines: 1,
), ),
), ),
@ -167,7 +168,7 @@ class _MenuViewWidget extends State<MenuViewWidget> {
alignment: Alignment.centerRight, alignment: Alignment.centerRight,
child: AutoSizeText( child: AutoSizeText(
menuDTO.sections![index].description!.firstWhere((translation) => translation.language == appContext.getContext().language).value!, menuDTO.sections![index].description!.firstWhere((translation) => translation.language == appContext.getContext().language).value!,
style: new TextStyle(fontSize: kSectionDescriptionDetailSize, fontFamily: ""), style: new TextStyle(fontSize: kIsWeb? kWebSectionDescriptionDetailSize: kSectionDescriptionDetailSize, fontFamily: ""),
maxLines: 1, maxLines: 1,
), ),
), ),

View File

@ -3,8 +3,7 @@ import 'package:tablet_app/Models/tabletContext.dart';
import 'package:tablet_app/client.dart'; import 'package:tablet_app/client.dart';
class AppContext with ChangeNotifier { class AppContext with ChangeNotifier {
TabletAppContext _tabletContext; TabletAppContext? _tabletContext;
Client? clientAPI;
AppContext(this._tabletContext); AppContext(this._tabletContext);

View File

@ -15,7 +15,7 @@ const kBackgroundSecondGrey = Color(0xFF5b5b63);
const kBackgroundLight = Color(0xfff3f3f3); const kBackgroundLight = Color(0xfff3f3f3);
const List<String> languages = ["FR", "NL", "EN", "DE"]; const List<String> languages = ["FR", "NL", "EN", "DE", "IT", "ES", "PL", "CN", "AR", "UK"]; // hmmmm depends on config..
const kTitleSize = 40.0; const kTitleSize = 40.0;
const kDescriptionSize = 25.0; const kDescriptionSize = 25.0;
@ -26,6 +26,12 @@ const kSectionDescriptionDetailSize = 35.0;
const kMenuTitleDetailSize = 45.0; const kMenuTitleDetailSize = 45.0;
const kMenuDescriptionDetailSize = 28.0; const kMenuDescriptionDetailSize = 28.0;
// WEB
const kWebMenuTitleDetailSize = 30.0;
const kWebMenuDescriptionDetailSize = 14.0;
const kWebSectionTitleDetailSize = 35.0;
const kWebSectionDescriptionDetailSize = 20.0;
const kNoneInfoOrIncorrect = 35.0; const kNoneInfoOrIncorrect = 35.0;
/* /*

View File

@ -41,7 +41,8 @@ void main() async {
} }
if(kIsWeb) { if(kIsWeb) {
localContext = TabletAppContext(host: "https://api.mymuseum.be"); localContext = TabletAppContext(host: "https://api.mymuseum.be", instanceId: "63514fd67ed8c735aaa4b8f1"); // mymuseum : 63514fd67ed8c735aaa4b8f1
print(localContext);
} }
initialRoute = isConfig ? '/main' : '/config'; initialRoute = isConfig ? '/main' : '/config';
@ -74,7 +75,7 @@ class _MyAppState extends State<MyApp> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return ChangeNotifierProvider<AppContext>( return ChangeNotifierProvider<AppContext>(
create: (_) => AppContext(widget.tabletAppContext!), create: (_) => AppContext(widget.tabletAppContext),
child: MaterialApp( child: MaterialApp(
debugShowCheckedModeBanner: false, debugShowCheckedModeBanner: false,
title: 'Tablet App Demo', title: 'Tablet App Demo',

View File

@ -74,11 +74,11 @@ class MapTypeAppTypeTransformer {
MapTypeApp? decode(dynamic data, {bool allowNull = true}) { MapTypeApp? decode(dynamic data, {bool allowNull = true}) {
if (data != null) { if (data != null) {
switch (data.toString()) { switch (data.toString()) {
case r'none': return MapTypeApp.none; case r'None': return MapTypeApp.none;
case r'normal': return MapTypeApp.normal; case r'Normal': return MapTypeApp.normal;
case r'satellite': return MapTypeApp.satellite; case r'Satellite': return MapTypeApp.satellite;
case r'terrain': return MapTypeApp.terrain; case r'Terrain': return MapTypeApp.terrain;
case r'hybrid': return MapTypeApp.hybrid; case r'Hybrid': return MapTypeApp.hybrid;
default: default:
if (!allowNull) { if (!allowNull) {
throw ArgumentError('Unknown enum value to decode: $data'); throw ArgumentError('Unknown enum value to decode: $data');

View File

@ -74,11 +74,11 @@ class ResourceTypeTypeTransformer {
ResourceType? decode(dynamic data, {bool allowNull = true}) { ResourceType? decode(dynamic data, {bool allowNull = true}) {
if (data != null) { if (data != null) {
switch (data.toString()) { switch (data.toString()) {
case r'image': return ResourceType.image; case r'Image': return ResourceType.image;
case r'video': return ResourceType.video; case r'Video': return ResourceType.video;
case r'imageUrl': return ResourceType.imageUrl; case r'ImageUrl': return ResourceType.imageUrl;
case r'videoUrl': return ResourceType.videoUrl; case r'VideoUrl': return ResourceType.videoUrl;
case r'audio': return ResourceType.audio; case r'Audio': return ResourceType.audio;
default: default:
if (!allowNull) { if (!allowNull) {
throw ArgumentError('Unknown enum value to decode: $data'); throw ArgumentError('Unknown enum value to decode: $data');

View File

@ -78,13 +78,13 @@ class SectionTypeTypeTransformer {
SectionType? decode(dynamic data, {bool allowNull = true}) { SectionType? decode(dynamic data, {bool allowNull = true}) {
if (data != null) { if (data != null) {
switch (data.toString()) { switch (data.toString()) {
case r'map': return SectionType.map; case r'Map': return SectionType.map;
case r'slider': return SectionType.slider; case r'Slider': return SectionType.slider;
case r'video': return SectionType.video; case r'Video': return SectionType.video;
case r'web': return SectionType.web; case r'Web': return SectionType.web;
case r'menu': return SectionType.menu; case r'Menu': return SectionType.menu;
case r'quizz': return SectionType.quizz; case r'Quizz': return SectionType.quizz;
case r'article': return SectionType.article; case r'Article': return SectionType.article;
default: default:
if (!allowNull) { if (!allowNull) {
throw ArgumentError('Unknown enum value to decode: $data'); throw ArgumentError('Unknown enum value to decode: $data');

View File

@ -318,6 +318,22 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "2.0.7" version: "2.0.7"
flutter_svg:
dependency: transitive
description:
name: flutter_svg
sha256: "6ff9fa12892ae074092de2fa6a9938fb21dbabfdaa2ff57dc697ff912fc8d4b2"
url: "https://pub.dev"
source: hosted
version: "1.1.6"
flutter_svg_provider:
dependency: "direct main"
description:
name: flutter_svg_provider
sha256: cbb2d02fd9feb70fc30221fc36a7ee5347f1cceae6b0c99ab4fa011bbd9f1f7f
url: "https://pub.dev"
source: hosted
version: "1.0.3"
flutter_test: flutter_test:
dependency: "direct dev" dependency: "direct dev"
description: flutter description: flutter
@ -591,6 +607,22 @@ packages:
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "1.8.3" version: "1.8.3"
path_drawing:
dependency: transitive
description:
name: path_drawing
sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977
url: "https://pub.dev"
source: hosted
version: "1.0.1"
path_parsing:
dependency: transitive
description:
name: path_parsing
sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf
url: "https://pub.dev"
source: hosted
version: "1.0.1"
petitparser: petitparser:
dependency: transitive dependency: transitive
description: description:

View File

@ -47,6 +47,7 @@ dependencies:
photo_view: ^0.14.0 photo_view: ^0.14.0
confetti: ^0.7.0 confetti: ^0.7.0
flutter_launcher_icons: ^0.10.0 # All but web flutter_launcher_icons: ^0.10.0 # All but web
flutter_svg_provider: ^1.0.3
openapi_generator_cli: ^4.0.0 openapi_generator_cli: ^4.0.0
openapi_generator: ^4.0.0 openapi_generator: ^4.0.0