Skip to content
Snippets Groups Projects
Commit db0b9b67 authored by Christof Kaufmann's avatar Christof Kaufmann
Browse files

Notebooks from applied-cs/data-science@7318d552

parent 60bf8bc2
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id:0003-aaa5ddb6637d60757bd46091f1a2eca1cc7f981da853b1aa1465e25d06b tags:
%% Cell type:markdown id:0003-70f0a6f0520e15b69826b38de72cdcaab8bc2c340308e4121e7ec5c4142 tags:
# Information im Rauschen
Man kann Bilder so manipulieren, dass sie Informationen enthalten, die
man beim Betrachten höchstens als Rauschen wahrnehmen kann.
<figure>
<figure>
<img
src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iNDU0Ljg0N3B0IiBoZWlnaHQ9IjM0Mi40OThwdCIgdmlld0JveD0iMCAwIDQ1NC44NDcgMzQyLjQ5OCIgdmVyc2lvbj0iMS4xIj4KPGRlZnM+CjxnPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTAiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSIiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtMSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy4yNjU2MjUgMCBMIDcuMjY1NjI1IC0xLjE3MTg3NSBMIDQuMzQzNzUgLTEuMTcxODc1IEMgNC4xMjUgLTEuMTcxODc1IDMuOTIxODc1IC0xLjE1NjI1IDMuNzE4NzUgLTEuMTU2MjUgTCAyIC0xLjE1NjI1IEwgMiAtMS4xNzE4NzUgTCA0LjQzNzUgLTMuNjU2MjUgQyA0LjkyMTg3NSAtNC4xNTYyNSA1LjY0MDYyNSAtNC43NSA2LjE0MDYyNSAtNS4zNTkzNzUgQyA2LjYyNSAtNS45Mzc1IDcuMjY1NjI1IC02Ljc2NTYyNSA3LjI2NTYyNSAtNy45Njg3NSBDIDcuMjY1NjI1IC05Ljg1OTM3NSA1Ljk4NDM3NSAtMTEuNTc4MTI1IDMuODI4MTI1IC0xMS41NzgxMjUgQyAyLjEyNSAtMTEuNTc4MTI1IDEuMTQwNjI1IC0xMC41IDAuNjcxODc1IC04LjgyODEyNSBMIDEuMzQzNzUgLTcuOTA2MjUgQyAxLjcxODc1IC05LjQ2ODc1IDIuMjUgLTEwLjQ2ODc1IDMuNTkzNzUgLTEwLjQ2ODc1IEMgNS4wNzgxMjUgLTEwLjQ2ODc1IDUuOTA2MjUgLTkuMjY1NjI1IDUuOTA2MjUgLTcuOTM3NSBDIDUuOTA2MjUgLTYuMzU5Mzc1IDQuNzAzMTI1IC01LjEyNSAzLjc4MTI1IC00LjIxODc1IEwgMC44MTI1IC0xLjEwOTM3NSBMIDAuODEyNSAwIFogTSA3LjI2NTYyNSAwICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMC0yIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA3LjQwNjI1IC0zLjgyODEyNSBDIDcuNDA2MjUgLTUuOTUzMTI1IDYuMzU5Mzc1IC03Ljg1OTM3NSA0Ljc4MTI1IC03Ljg1OTM3NSBDIDMuNjU2MjUgLTcuODU5Mzc1IDIuNjcxODc1IC03LjI1IDIuMDYyNSAtNi40ODQzNzUgQyAyLjIzNDM3NSAtOC45MjE4NzUgMy4zNzUgLTEwLjUxNTYyNSA1LjAxNTYyNSAtMTAuNTE1NjI1IEMgNS40NTMxMjUgLTEwLjUxNTYyNSA2LjA0Njg3NSAtMTAuNDUzMTI1IDYuNzE4NzUgLTEwLjE1NjI1IEwgNi43MTg3NSAtMTEuMjM0Mzc1IEMgNS45ODQzNzUgLTExLjUxNTYyNSA1LjQ2ODc1IC0xMS41NzgxMjUgNSAtMTEuNTc4MTI1IEMgMi43NSAtMTEuNTc4MTI1IDAuNjcxODc1IC05LjIzNDM3NSAwLjY3MTg3NSAtNS41MzEyNSBDIDAuNjcxODc1IC0wLjc5Njg3NSAyLjY1NjI1IDAuMjgxMjUgNC4wNjI1IDAuMjgxMjUgQyA0Ljg0Mzc1IDAuMjgxMjUgNS42MDkzNzUgMC4wMzEyNSA2LjM1OTM3NSAtMC44MjgxMjUgQyA3LjEwOTM3NSAtMS43MzQzNzUgNy40MDYyNSAtMi41IDcuNDA2MjUgLTMuODI4MTI1IFogTSA2LjA0Njg3NSAtMy44MjgxMjUgQyA2LjA0Njg3NSAtMy4xNTYyNSA2LjA0Njg3NSAtMi40ODQzNzUgNS42NDA2MjUgLTEuNzk2ODc1IEMgNS4zMjgxMjUgLTEuMjUgNC44OTA2MjUgLTAuNzk2ODc1IDQuMDYyNSAtMC43OTY4NzUgQyAyLjQyMTg3NSAtMC43OTY4NzUgMi4xNTYyNSAtMy4wNzgxMjUgMi4wNzgxMjUgLTMuNzY1NjI1IEMgMi4wNzgxMjUgLTMuOTA2MjUgMi4wNzgxMjUgLTQgMi4wOTM3NSAtNC4yNSBDIDIuMDkzNzUgLTUuNTkzNzUgMi44NzUgLTYuNzk2ODc1IDQuMTI1IC02Ljc5Njg3NSBDIDQuOTM3NSAtNi43OTY4NzUgNS4zNTkzNzUgLTYuMzc1IDUuNjcxODc1IC01Ljg0Mzc1IEMgNi4wMzEyNSAtNS4xNzE4NzUgNi4wNDY4NzUgLTQuNTMxMjUgNi4wNDY4NzUgLTMuODI4MTI1IFogTSA2LjA0Njg3NSAtMy44MjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDYuOTIxODc1IDAgTCA2LjkyMTg3NSAtMSBMIDQuODkwNjI1IC0xIEwgNC44OTA2MjUgLTExLjU3ODEyNSBMIDQuNTYyNSAtMTEuNTc4MTI1IEMgMy42NDA2MjUgLTEwLjYwOTM3NSAyLjU0Njg3NSAtMTAuNDY4NzUgMS40NTMxMjUgLTEwLjQzNzUgTCAxLjQ1MzEyNSAtOS40Mzc1IEMgMS45NTMxMjUgLTkuNDUzMTI1IDIuNzUgLTkuNDg0Mzc1IDMuNTYyNSAtOS44NDM3NSBMIDMuNTYyNSAtMSBMIDEuNTMxMjUgLTEgTCAxLjUzMTI1IDAgWiBNIDYuOTIxODc1IDAgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTQiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDA2MjUgLTMuMTcxODc1IEMgNy40MDYyNSAtNC41MzEyNSA2LjQ1MzEyNSAtNS42NzE4NzUgNS4xNzE4NzUgLTYuMDkzNzUgQyA2LjIwMzEyNSAtNi42NTYyNSA2Ljk1MzEyNSAtNy43MzQzNzUgNi45NTMxMjUgLTguOTY4NzUgQyA2Ljk1MzEyNSAtMTAuNDIxODc1IDUuNjI1IC0xMS41NzgxMjUgNC4wMTU2MjUgLTExLjU3ODEyNSBDIDIuNTMxMjUgLTExLjU3ODEyNSAxLjM3NSAtMTAuNjU2MjUgMC44OTA2MjUgLTkuNjcxODc1IEMgMS4wMTU2MjUgLTkuNSAxLjMyODEyNSAtOSAxLjQ4NDM3NSAtOC43NSBDIDEuODU5Mzc1IC05Ljc2NTYyNSAyLjg0Mzc1IC0xMC41MTU2MjUgNCAtMTAuNTE1NjI1IEMgNC45NTMxMjUgLTEwLjUxNTYyNSA1LjU5Mzc1IC05Ljg5MDYyNSA1LjU5Mzc1IC04Ljk2ODc1IEMgNS41OTM3NSAtOC4wMzEyNSA1IC02Ljk4NDM3NSAzLjk4NDM3NSAtNi43NSBDIDMuOTA2MjUgLTYuNzUgMi44NDM3NSAtNi42NDA2MjUgMi43MDMxMjUgLTYuNjI1IEwgMi43MDMxMjUgLTUuNTc4MTI1IEwgMy44NzUgLTUuNTc4MTI1IEMgNS41IC01LjU3ODEyNSA1Ljk1MzEyNSAtNC4xNzE4NzUgNS45NTMxMjUgLTMuMTg3NSBDIDUuOTUzMTI1IC0xLjg0Mzc1IDUuMjAzMTI1IC0wLjc5Njg3NSAzLjk1MzEyNSAtMC43OTY4NzUgQyAzIC0wLjc5Njg3NSAxLjY0MDYyNSAtMS4yODEyNSAwLjg1OTM3NSAtMi41NDY4NzUgQyAwLjczNDM3NSAtMS45NTMxMjUgMC43MzQzNzUgLTEuOTA2MjUgMC42NzE4NzUgLTEuNSBDIDEuNDg0Mzc1IC0wLjMxMjUgMi43OTY4NzUgMC4yODEyNSA0IDAuMjgxMjUgQyA1Ljk1MzEyNSAwLjI4MTI1IDcuNDA2MjUgLTEuMzU5Mzc1IDcuNDA2MjUgLTMuMTcxODc1IFogTSA3LjQwNjI1IC0zLjE3MTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtNSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy40MDYyNSAtNS43NjU2MjUgQyA3LjQwNjI1IC0xMC43NjU2MjUgNS4yNSAtMTEuNTc4MTI1IDQuMDkzNzUgLTExLjU3ODEyNSBDIDIuOTM3NSAtMTEuNTc4MTI1IDIuMjAzMTI1IC0xMS4wNDY4NzUgMS41NjI1IC0xMC4yMzQzNzUgQyAwLjgxMjUgLTkuMjgxMjUgMC42NzE4NzUgLTguNDM3NSAwLjY3MTg3NSAtNy40NTMxMjUgQyAwLjY3MTg3NSAtNi4yODEyNSAwLjg3NSAtNS41NjI1IDEuMzU5Mzc1IC00LjczNDM3NSBDIDIuMDE1NjI1IC0zLjY3MTg3NSAyLjYyNSAtMy40Mzc1IDMuMjgxMjUgLTMuNDM3NSBDIDQuMzEyNSAtMy40Mzc1IDUuMzI4MTI1IC0zLjkzNzUgNi4wMTU2MjUgLTQuNzk2ODc1IEMgNS44OTA2MjUgLTIuNDg0Mzc1IDQuODQzNzUgLTAuNzk2ODc1IDMuMzI4MTI1IC0wLjc5Njg3NSBDIDIuNzAzMTI1IC0wLjc5Njg3NSAyLjIwMzEyNSAtMC45ODQzNzUgMS43MDMxMjUgLTEuNDUzMTI1IEwgMS4xNzE4NzUgLTAuNTMxMjUgQyAxLjY1NjI1IC0wLjEyNSAyLjI2NTYyNSAwLjI4MTI1IDMuMzI4MTI1IDAuMjgxMjUgQyA1LjQwNjI1IDAuMjgxMjUgNy40MDYyNSAtMi4wMzEyNSA3LjQwNjI1IC01Ljc2NTYyNSBaIE0gNS45Njg3NSAtNy4wNzgxMjUgQyA1Ljk2ODc1IC01LjYyNSA1LjE0MDYyNSAtNC41IDMuOTM3NSAtNC41IEMgMy4xNTYyNSAtNC41IDIuNzM0Mzc1IC00LjkwNjI1IDIuNDIxODc1IC01LjQzNzUgQyAyLjA0Njg3NSAtNi4xMDkzNzUgMi4wMzEyNSAtNi43NjU2MjUgMi4wMzEyNSAtNy40NTMxMjUgQyAyLjAzMTI1IC04LjEyNSAyLjAzMTI1IC04Ljg3NSAyLjUxNTYyNSAtOS42MDkzNzUgQyAyLjg3NSAtMTAuMTQwNjI1IDMuMzI4MTI1IC0xMC41MTU2MjUgNC4wOTM3NSAtMTAuNTE1NjI1IEMgNS42ODc1IC0xMC41MTU2MjUgNS45Mzc1IC04LjIwMzEyNSA1Ljk1MzEyNSAtNy40ODQzNzUgQyA1Ljk2ODc1IC03LjM3NSA1Ljk2ODc1IC03LjE0MDYyNSA1Ljk2ODc1IC03LjA3ODEyNSBaIE0gNS45Njg3NSAtNy4wNzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTYiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDIxODc1IC01LjYyNSBDIDcuNDIxODc1IC02LjYwOTM3NSA3LjQwNjI1IC04LjQzNzUgNi43MDMxMjUgLTkuODQzNzUgQyA1Ljk4NDM3NSAtMTEuMjAzMTI1IDQuODU5Mzc1IC0xMS41NzgxMjUgNC4wNDY4NzUgLTExLjU3ODEyNSBDIDIuODc1IC0xMS41NzgxMjUgMS44NzUgLTEwLjg3NSAxLjM1OTM3NSAtOS43ODEyNSBDIDAuODEyNSAtOC42MjUgMC42NTYyNSAtNy40Mzc1IDAuNjU2MjUgLTUuNjI1IEMgMC42NTYyNSAtNC4zOTA2MjUgMC43MDMxMjUgLTIuODc1IDEuMzI4MTI1IC0xLjU0Njg3NSBDIDIuMDMxMjUgLTAuMDkzNzUgMy4yMTg3NSAwLjI4MTI1IDQuMDMxMjUgMC4yODEyNSBDIDUuMDkzNzUgMC4yODEyNSA2LjEyNSAtMC4yOTY4NzUgNi43MTg3NSAtMS40ODQzNzUgQyA3LjMxMjUgLTIuNzE4NzUgNy40MjE4NzUgLTQuMDc4MTI1IDcuNDIxODc1IC01LjYyNSBaIE0gNi4xMDkzNzUgLTUuODEyNSBDIDYuMTA5Mzc1IC00LjIxODc1IDYuMTA5Mzc1IC0wLjc4MTI1IDQuMDMxMjUgLTAuNzgxMjUgQyAyLjcxODc1IC0wLjc4MTI1IDIuMzI4MTI1IC0yLjI2NTYyNSAyLjIwMzEyNSAtMi43NjU2MjUgQyAyIC0zLjY0MDYyNSAxLjk2ODc1IC00LjQ1MzEyNSAxLjk2ODc1IC01LjgxMjUgQyAxLjk2ODc1IC02Ljg5MDYyNSAxLjk2ODc1IC04LjA5Mzc1IDIuMjk2ODc1IC05LjA0Njg3NSBDIDIuNjg3NSAtMTAuMTQwNjI1IDMuMzc1IC0xMC41MTU2MjUgNC4wMzEyNSAtMTAuNTE1NjI1IEMgNS4yOTY4NzUgLTEwLjUxNTYyNSA1LjcxODc1IC05LjI1IDUuODU5Mzc1IC04Ljc5Njg3NSBDIDYuMTA5Mzc1IC03Ljg5MDYyNSA2LjEwOTM3NSAtNi44MTI1IDYuMTA5Mzc1IC01LjgxMjUgWiBNIDYuMTA5Mzc1IC01LjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTciPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNjI1IC0yLjkzNzUgTCA3LjYyNSAtNCBMIDYuMDYyNSAtNCBMIDYuMDYyNSAtMTEuMjk2ODc1IEwgNC41NDY4NzUgLTExLjI5Njg3NSBMIDAuNDUzMTI1IC00IEwgMC40NTMxMjUgLTIuOTM3NSBMIDQuNzAzMTI1IC0yLjkzNzUgTCA0LjcwMzEyNSAwIEwgNi4wNjI1IDAgTCA2LjA2MjUgLTIuOTM3NSBaIE0gNC43NSAtNCBMIDEuNzgxMjUgLTQgQyAyLjc2NTYyNSAtNS43NSA0LjczNDM3NSAtOS4yOTY4NzUgNC43NSAtMTAuNSBaIE0gNC43NSAtNCAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtOCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy4yNjU2MjUgLTMuNSBDIDcuMjY1NjI1IC01LjYwOTM3NSA1Ljg3NSAtNy4yNSA0LjIwMzEyNSAtNy4yNSBDIDMuNTkzNzUgLTcuMjUgMy4wMTU2MjUgLTcuMDQ2ODc1IDIuNTE1NjI1IC02LjYyNSBMIDIuNTE1NjI1IC0xMC4xODc1IEwgNi43MzQzNzUgLTEwLjE4NzUgTCA2LjczNDM3NSAtMTEuMjk2ODc1IEwgMS4yNSAtMTEuMjk2ODc1IEwgMS4yNSAtNC45Mzc1IEwgMi40MDYyNSAtNC45Mzc1IEMgMi43MTg3NSAtNS42NzE4NzUgMy4zNTkzNzUgLTYuMjAzMTI1IDQuMTg3NSAtNi4yMDMxMjUgQyA0Ljk1MzEyNSAtNi4yMDMxMjUgNS44MTI1IC01LjUxNTYyNSA1LjgxMjUgLTMuNTMxMjUgQyA1LjgxMjUgLTEuNDA2MjUgNC41OTM3NSAtMC43OTY4NzUgMy43MDMxMjUgLTAuNzk2ODc1IEMgMi41OTM3NSAtMC43OTY4NzUgMS41NzgxMjUgLTEuNDY4NzUgMS4xNDA2MjUgLTIuMzkwNjI1IEwgMC41NzgxMjUgLTEuNDIxODc1IEMgMS4zNzUgLTAuMjAzMTI1IDIuNjcxODc1IDAuMjgxMjUgMy43MDMxMjUgMC4yODEyNSBDIDUuNzAzMTI1IDAuMjgxMjUgNy4yNjU2MjUgLTEuNDIxODc1IDcuMjY1NjI1IC0zLjUgWiBNIDcuMjY1NjI1IC0zLjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTkiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDA2MjUgLTMuMTcxODc1IEMgNy40MDYyNSAtNC4zMTI1IDYuNzM0Mzc1IC01LjUxNTYyNSA1LjIwMzEyNSAtNi4xMDkzNzUgQyA2LjUxNTYyNSAtNi41NDY4NzUgNy4xODc1IC03LjU3ODEyNSA3LjE4NzUgLTguNTkzNzUgQyA3LjE4NzUgLTEwLjE4NzUgNS43OTY4NzUgLTExLjU3ODEyNSA0LjA0Njg3NSAtMTEuNTc4MTI1IEMgMi4yMTg3NSAtMTEuNTc4MTI1IDAuODkwNjI1IC0xMC4xNDA2MjUgMC44OTA2MjUgLTguNTkzNzUgQyAwLjg5MDYyNSAtNy41OTM3NSAxLjU0Njg3NSAtNi41NjI1IDIuODc1IC02LjEwOTM3NSBDIDEuMTg3NSAtNS40NTMxMjUgMC42NzE4NzUgLTQuMTU2MjUgMC42NzE4NzUgLTMuMTcxODc1IEMgMC42NzE4NzUgLTEuMjgxMjUgMi4yMDMxMjUgMC4yODEyNSA0LjAzMTI1IDAuMjgxMjUgQyA1LjkyMTg3NSAwLjI4MTI1IDcuNDA2MjUgLTEuMzEyNSA3LjQwNjI1IC0zLjE3MTg3NSBaIE0gNS45NTMxMjUgLTguNTc4MTI1IEMgNS45NTMxMjUgLTcuMzI4MTI1IDUuMTI1IC02LjYyNSA0LjA0Njg3NSAtNi42MjUgQyAyLjg5MDYyNSAtNi42MjUgMi4xMjUgLTcuNDA2MjUgMi4xMjUgLTguNTc4MTI1IEMgMi4xMjUgLTkuNzY1NjI1IDIuODkwNjI1IC0xMC41MTU2MjUgNC4wNDY4NzUgLTEwLjUxNTYyNSBDIDUuMTA5Mzc1IC0xMC41MTU2MjUgNS45NTMxMjUgLTkuODI4MTI1IDUuOTUzMTI1IC04LjU3ODEyNSBaIE0gNi4wNjI1IC0zLjE4NzUgQyA2LjA2MjUgLTEuMzkwNjI1IDQuOTIxODc1IC0wLjc5Njg3NSA0LjA0Njg3NSAtMC43OTY4NzUgQyAzLjA2MjUgLTAuNzk2ODc1IDIuMDE1NjI1IC0xLjQ2ODc1IDIuMDE1NjI1IC0zLjE4NzUgQyAyLjAxNTYyNSAtNC45NTMxMjUgMy4xODc1IC01LjU3ODEyNSA0LjAzMTI1IC01LjU3ODEyNSBDIDQuOTUzMTI1IC01LjU3ODEyNSA2LjA2MjUgLTQuOTIxODc1IDYuMDYyNSAtMy4xODc1IFogTSA2LjA2MjUgLTMuMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9IiIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0xIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA1Ljk2ODc1IDAgTCA1Ljk2ODc1IC0wLjgyODEyNSBMIDQuMjE4NzUgLTAuODI4MTI1IEwgNC4yMTg3NSAtOS43MDMxMjUgTCAzLjkzNzUgLTkuNzAzMTI1IEMgMy43MTg3NSAtOS40Njg3NSAzLjAzMTI1IC04Ljc5Njg3NSAxLjQ4NDM3NSAtOC43NjU2MjUgQyAxLjI4MTI1IC04Ljc2NTYyNSAxLjI2NTYyNSAtOC43NSAxLjI2NTYyNSAtOC40ODQzNzUgTCAxLjI2NTYyNSAtNy45MjE4NzUgQyAyLjE0MDYyNSAtNy45MjE4NzUgMi43OTY4NzUgLTguMTQwNjI1IDMuMDkzNzUgLTguMjY1NjI1IEwgMy4wOTM3NSAtMC44MjgxMjUgTCAxLjM0Mzc1IC0wLjgyODEyNSBMIDEuMzQzNzUgMCBaIE0gNS45Njg3NSAwICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0yIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA2LjQyMTg3NSAtNC42NzE4NzUgQyA2LjQyMTg3NSAtNS42NDA2MjUgNi4zOTA2MjUgLTYuNzM0Mzc1IDYuMDE1NjI1IC03Ljc2NTYyNSBDIDUuMzkwNjI1IC05LjM1OTM3NSA0LjI4MTI1IC05LjcwMzEyNSAzLjUxNTYyNSAtOS43MDMxMjUgQyAyLjU3ODEyNSAtOS43MDMxMjUgMS42NzE4NzUgLTkuMjE4NzUgMS4xNDA2MjUgLTguMDkzNzUgQyAwLjY3MTg3NSAtNy4wNzgxMjUgMC41OTM3NSAtNS45MDYyNSAwLjU5Mzc1IC00LjY3MTg3NSBDIDAuNTkzNzUgLTMuMTA5Mzc1IDAuNzE4NzUgLTIuMjE4NzUgMS4xNzE4NzUgLTEuMjE4NzUgQyAxLjYwOTM3NSAtMC4yNjU2MjUgMi41MzEyNSAwLjI5Njg3NSAzLjUgMC4yOTY4NzUgQyA0LjQ1MzEyNSAwLjI5Njg3NSA1LjM0Mzc1IC0wLjIxODc1IDUuODQzNzUgLTEuMjAzMTI1IEMgNi4zMjgxMjUgLTIuMjE4NzUgNi40MjE4NzUgLTMuMjY1NjI1IDYuNDIxODc1IC00LjY3MTg3NSBaIE0gNS4zMjgxMjUgLTQuODQzNzUgQyA1LjMyODEyNSAtMy45Mzc1IDUuMzI4MTI1IC0yLjk4NDM3NSA1LjA3ODEyNSAtMi4wOTM3NSBDIDQuNjg3NSAtMC43MTg3NSAzLjg5MDYyNSAtMC41NjI1IDMuNTE1NjI1IC0wLjU2MjUgQyAxLjY3MTg3NSAtMC41NjI1IDEuNjcxODc1IC0zLjUgMS42NzE4NzUgLTQuODQzNzUgQyAxLjY3MTg3NSAtNS43ODEyNSAxLjY3MTg3NSAtNi42NTYyNSAxLjkzNzUgLTcuNDY4NzUgQyAyLjI4MTI1IC04LjQ4NDM3NSAyLjkwNjI1IC04LjgyODEyNSAzLjUgLTguODI4MTI1IEMgNS4zMjgxMjUgLTguODI4MTI1IDUuMzI4MTI1IC02LjE3MTg3NSA1LjMyODEyNSAtNC44NDM3NSBaIE0gNS4zMjgxMjUgLTQuODQzNzUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDMuNzUgMy41NzgxMjUgTCAzLjc1IDIuNzE4NzUgTCAyLjQzNzUgMi43MTg3NSBMIDIuNDM3NSAtOS44OTA2MjUgTCAzLjc1IC05Ljg5MDYyNSBMIDMuNzUgLTEwLjc1IEwgMS40MjE4NzUgLTEwLjc1IEwgMS40MjE4NzUgMy41NzgxMjUgWiBNIDMuNzUgMy41NzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTQiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDIuNTMxMjUgLTAuMDE1NjI1IEwgMi41MzEyNSAtMS4xNTYyNSBMIDEuMzU5Mzc1IC0xLjE1NjI1IEwgMS4zNTkzNzUgMCBMIDEuNzE4NzUgMCBMIDEuMzU5Mzc1IDEuNzk2ODc1IEwgMS45Mzc1IDEuNzk2ODc1IFogTSAyLjUzMTI1IC0wLjAxNTYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtNSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMi41MzEyNSAwIEwgMi41MzEyNSAtMS4xNTYyNSBMIDEuMzc1IC0xLjE1NjI1IEwgMS4zNzUgMCBaIE0gNC45ODQzNzUgMCBMIDQuOTg0Mzc1IC0xLjE1NjI1IEwgMy44MTI1IC0xLjE1NjI1IEwgMy44MTI1IDAgWiBNIDcuNDIxODc1IDAgTCA3LjQyMTg3NSAtMS4xNTYyNSBMIDYuMjUgLTEuMTU2MjUgTCA2LjI1IDAgWiBNIDcuNDIxODc1IDAgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTYiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDIuNjI1IDMuNTc4MTI1IEwgMi42MjUgLTEwLjc1IEwgMC4yOTY4NzUgLTEwLjc1IEwgMC4yOTY4NzUgLTkuODkwNjI1IEwgMS42MDkzNzUgLTkuODkwNjI1IEwgMS42MDkzNzUgMi43MTg3NSBMIDAuMjk2ODc1IDIuNzE4NzUgTCAwLjI5Njg3NSAzLjU3ODEyNSBaIE0gMi42MjUgMy41NzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTciPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDYuNDA2MjUgLTQuODEyNSBDIDYuNDA2MjUgLTguNzAzMTI1IDQuODEyNSAtOS43MDMxMjUgMy41NjI1IC05LjcwMzEyNSBDIDIuNTMxMjUgLTkuNzAzMTI1IDEuOTIxODc1IC05LjIxODc1IDEuNDIxODc1IC04LjYyNSBDIDAuNzM0Mzc1IC03Ljc5Njg3NSAwLjYwOTM3NSAtNy4wNDY4NzUgMC42MDkzNzUgLTYuMjE4NzUgQyAwLjYwOTM3NSAtNC4zNzUgMS41NDY4NzUgLTIuODEyNSAyLjg1OTM3NSAtMi44MTI1IEMgMy45MDYyNSAtMi44MTI1IDQuNzAzMTI1IC0zLjMxMjUgNS4yNSAtMy45ODQzNzUgQyA1LjE0MDYyNSAtMS45ODQzNzUgNC4yMDMxMjUgLTAuNTYyNSAyLjg5MDYyNSAtMC41NjI1IEMgMi4yOTY4NzUgLTAuNTYyNSAxLjg0Mzc1IC0wLjc1IDEuNDY4NzUgLTEuMTI1IEwgMS4wMTU2MjUgLTAuMzU5Mzc1IEMgMS42NTYyNSAwLjE0MDYyNSAyLjI1IDAuMjk2ODc1IDIuODkwNjI1IDAuMjk2ODc1IEMgNC43MDMxMjUgMC4yOTY4NzUgNi40MDYyNSAtMS42NTYyNSA2LjQwNjI1IC00LjgxMjUgWiBNIDUuMjE4NzUgLTUuODkwNjI1IEMgNS4yMTg3NSAtNC44MTI1IDQuNjA5Mzc1IC0zLjY3MTg3NSAzLjQwNjI1IC0zLjY3MTg3NSBDIDMuMTcxODc1IC0zLjY3MTg3NSAyLjUzMTI1IC0zLjY3MTg3NSAyLjA2MjUgLTQuNTE1NjI1IEMgMS43OTY4NzUgLTUuMDMxMjUgMS43MzQzNzUgLTUuNDUzMTI1IDEuNzM0Mzc1IC02LjIxODc1IEMgMS43MzQzNzUgLTYuODU5Mzc1IDEuNzUgLTcuNDUzMTI1IDIuMTg3NSAtOC4xMDkzNzUgQyAyLjM5MDYyNSAtOC40MjE4NzUgMi43ODEyNSAtOC44NzUgMy41NjI1IC04Ljg3NSBDIDQuOTM3NSAtOC44NzUgNS4xNzE4NzUgLTYuOTM3NSA1LjIwMzEyNSAtNi4yMzQzNzUgQyA1LjIxODc1IC02LjE0MDYyNSA1LjIxODc1IC02IDUuMjE4NzUgLTUuODkwNjI1IFogTSA1LjIxODc1IC01Ljg5MDYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtOCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNi40MjE4NzUgLTIuNTc4MTI1IEMgNi40MjE4NzUgLTMuNzM0Mzc1IDUuNjQwNjI1IC00LjY4NzUgNC40Njg3NSAtNS4wNzgxMjUgQyA1LjM3NSAtNS4zNDM3NSA2LjIzNDM3NSAtNi4xNDA2MjUgNi4yMzQzNzUgLTcuMjAzMTI1IEMgNi4yMzQzNzUgLTguNTQ2ODc1IDUuMDMxMjUgLTkuNzAzMTI1IDMuNTE1NjI1IC05LjcwMzEyNSBDIDEuOTM3NSAtOS43MDMxMjUgMC43ODEyNSAtOC41IDAuNzgxMjUgLTcuMjAzMTI1IEMgMC43ODEyNSAtNi4xMjUgMS42NTYyNSAtNS4zMjgxMjUgMi41MzEyNSAtNS4wNzgxMjUgQyAxLjM3NSAtNC42ODc1IDAuNTkzNzUgLTMuNzM0Mzc1IDAuNTkzNzUgLTIuNTc4MTI1IEMgMC41OTM3NSAtMS4wNDY4NzUgMS44NTkzNzUgMC4yOTY4NzUgMy41IDAuMjk2ODc1IEMgNS4xODc1IDAuMjk2ODc1IDYuNDIxODc1IC0xLjA3ODEyNSA2LjQyMTg3NSAtMi41NzgxMjUgWiBNIDUuMjUgLTcuMTg3NSBDIDUuMjUgLTYuMjE4NzUgNC41OTM3NSAtNS41MTU2MjUgMy41MTU2MjUgLTUuNTE1NjI1IEMgMi4zNzUgLTUuNTE1NjI1IDEuNzY1NjI1IC02LjI2NTYyNSAxLjc2NTYyNSAtNy4xODc1IEMgMS43NjU2MjUgLTguMjgxMjUgMi41MzEyNSAtOC44NzUgMy41IC04Ljg3NSBDIDQuNTMxMjUgLTguODc1IDUuMjUgLTguMjM0Mzc1IDUuMjUgLTcuMTg3NSBaIE0gNS4yOTY4NzUgLTIuNTkzNzUgQyA1LjI5Njg3NSAtMS4yMDMxMjUgNC40MjE4NzUgLTAuNTYyNSAzLjUxNTYyNSAtMC41NjI1IEMgMi41NDY4NzUgLTAuNTYyNSAxLjcxODc1IC0xLjI1IDEuNzE4NzUgLTIuNTkzNzUgQyAxLjcxODc1IC00LjEyNSAyLjc1IC00LjY0MDYyNSAzLjUgLTQuNjQwNjI1IEMgNC4yOTY4NzUgLTQuNjQwNjI1IDUuMjk2ODc1IC00LjA5Mzc1IDUuMjk2ODc1IC0yLjU5Mzc1IFogTSA1LjI5Njg3NSAtMi41OTM3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtOSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMi41MzEyNSAtOC44MTI1IEwgMi41MzEyNSAtOS45NTMxMjUgTCAxLjM1OTM3NSAtOS45NTMxMjUgTCAxLjM1OTM3NSAtOC43OTY4NzUgTCAxLjcxODc1IC04Ljc5Njg3NSBMIDEuMzU5Mzc1IC03IEwgMS45Mzc1IC03IFogTSAyLjUzMTI1IC04LjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTEwIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA2LjY4NzUgLTMuMjAzMTI1IEMgNi42ODc1IC00Ljk2ODc1IDUuNzM0Mzc1IC02LjUxNTYyNSA0LjQwNjI1IC02LjUxNTYyNSBDIDMuOTg0Mzc1IC02LjUxNTYyNSAzLjA2MjUgLTYuNDIxODc1IDIuMTg3NSAtNS43MDMxMjUgTCAyLjE4NzUgLTkuOTUzMTI1IEwgMS4xMjUgLTkuOTUzMTI1IEwgMS4xMjUgMCBMIDIuMjAzMTI1IDAgTCAyLjIwMzEyNSAtMC42NDA2MjUgQyAyLjg3NSAtMC4wMTU2MjUgMy41NzgxMjUgMC4xNDA2MjUgNC4wNzgxMjUgMC4xNDA2MjUgQyA1LjQzNzUgMC4xNDA2MjUgNi42ODc1IC0xLjI1IDYuNjg3NSAtMy4yMDMxMjUgWiBNIDUuNTkzNzUgLTMuMjAzMTI1IEMgNS41OTM3NSAtMS4zMjgxMjUgNC40MjE4NzUgLTAuNzE4NzUgMy41NDY4NzUgLTAuNzE4NzUgQyAzLjE0MDYyNSAtMC43MTg3NSAyLjg3NSAtMC44NTkzNzUgMi42MDkzNzUgLTEuMDYyNSBDIDIuMjY1NjI1IC0xLjM1OTM3NSAyLjIwMzEyNSAtMS42MjUgMi4yMDMxMjUgLTEuODU5Mzc1IEwgMi4yMDMxMjUgLTQuODI4MTI1IEMgMi40Njg3NSAtNS4yMzQzNzUgMi45ODQzNzUgLTUuNjU2MjUgMy42ODc1IC01LjY1NjI1IEMgNC41NjI1IC01LjY1NjI1IDUuNTkzNzUgLTQuOTg0Mzc1IDUuNTkzNzUgLTMuMjAzMTI1IFogTSA1LjU5Mzc1IC0zLjIwMzEyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDUuODQzNzUgLTMuMjM0Mzc1IEMgNS44NDM3NSAtMy44NDM3NSA1Ljc4MTI1IC00LjcxODc1IDUuMzI4MTI1IC01LjQ4NDM3NSBDIDQuNzM0Mzc1IC02LjQ2ODc1IDMuNzM0Mzc1IC02LjU3ODEyNSAzLjMxMjUgLTYuNTc4MTI1IEMgMS43NjU2MjUgLTYuNTc4MTI1IDAuNDY4NzUgLTUuMDkzNzUgMC40Njg3NSAtMy4yMzQzNzUgQyAwLjQ2ODc1IC0xLjMyODEyNSAxLjg0Mzc1IDAuMTQwNjI1IDMuNTE1NjI1IDAuMTQwNjI1IEMgNC4xNzE4NzUgMC4xNDA2MjUgNC45Njg3NSAtMC4wNDY4NzUgNS43NSAtMC42MDkzNzUgQyA1Ljc1IC0wLjY3MTg3NSA1LjcwMzEyNSAtMS4xNDA2MjUgNS43MDMxMjUgLTEuMTQwNjI1IEMgNS43MDMxMjUgLTEuMTQwNjI1IDUuNjcxODc1IC0xLjQ4NDM3NSA1LjY3MTg3NSAtMS41MzEyNSBDIDQuODEyNSAtMC44MTI1IDMuOTY4NzUgLTAuNzE4NzUgMy41NDY4NzUgLTAuNzE4NzUgQyAyLjQzNzUgLTAuNzE4NzUgMS40ODQzNzUgLTEuNzAzMTI1IDEuNDY4NzUgLTMuMjM0Mzc1IFogTSA0Ljk4NDM3NSAtNCBMIDEuNTQ2ODc1IC00IEMgMS43OTY4NzUgLTQuOTY4NzUgMi40Njg3NSAtNS43MTg3NSAzLjMxMjUgLTUuNzE4NzUgQyAzLjc2NTYyNSAtNS43MTg3NSA0Ljc1IC01LjUxNTYyNSA0Ljk4NDM3NSAtNCBaIE0gNC45ODQzNzUgLTQgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgyLTAiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSIiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDItMSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNC43NjU2MjUgLTYuMTg3NSBDIDQuNzY1NjI1IC02LjkwNjI1IDQuMTU2MjUgLTcuNTE1NjI1IDMuNDM3NSAtNy41MTU2MjUgQyAyLjcxODc1IC03LjUxNTYyNSAyLjEyNSAtNi45MDYyNSAyLjEyNSAtNi4xODc1IEMgMi4xMjUgLTUuNDg0Mzc1IDIuNzE4NzUgLTQuODc1IDMuNDM3NSAtNC44NzUgQyA0LjE1NjI1IC00Ljg3NSA0Ljc2NTYyNSAtNS40ODQzNzUgNC43NjU2MjUgLTYuMTg3NSBaIE0gNC43NjU2MjUgLTYuMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDMtMCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9IiIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMy0xIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSAyLjY0MDYyNSAtMC42ODc1IEMgMi42NDA2MjUgLTEuMTA5Mzc1IDIuMjk2ODc1IC0xLjM5MDYyNSAxLjk1MzEyNSAtMS4zOTA2MjUgQyAxLjUzMTI1IC0xLjM5MDYyNSAxLjI1IC0xLjA0Njg3NSAxLjI1IC0wLjcwMzEyNSBDIDEuMjUgLTAuMjgxMjUgMS41OTM3NSAwIDEuOTM3NSAwIEMgMi4zNTkzNzUgMCAyLjY0MDYyNSAtMC4zNDM3NSAyLjY0MDYyNSAtMC42ODc1IFogTSAyLjY0MDYyNSAtMC42ODc1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoNC0wIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGg0LTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDEwLjQwNjI1IC00LjY4NzUgQyAxMS4wMTU2MjUgLTQuMTcxODc1IDExLjc1IC0zLjc5Njg3NSAxMi4yMTg3NSAtMy41NzgxMjUgQyAxMS43MDMxMjUgLTMuMzU5Mzc1IDExIC0yLjk4NDM3NSAxMC40MDYyNSAtMi40ODQzNzUgTCAxLjMxMjUgLTIuNDg0Mzc1IEMgMS4wNjI1IC0yLjQ4NDM3NSAwLjc4MTI1IC0yLjQ4NDM3NSAwLjc4MTI1IC0yLjE4NzUgQyAwLjc4MTI1IC0xLjkwNjI1IDEuMDQ2ODc1IC0xLjkwNjI1IDEuMjk2ODc1IC0xLjkwNjI1IEwgOS43NjU2MjUgLTEuOTA2MjUgQyA5LjA3ODEyNSAtMS4yNSA4LjMyODEyNSAwLjAxNTYyNSA4LjMyODEyNSAwLjIwMzEyNSBDIDguMzI4MTI1IDAuMzU5Mzc1IDguNTE1NjI1IDAuMzU5Mzc1IDguNjA5Mzc1IDAuMzU5Mzc1IEMgOC43MTg3NSAwLjM1OTM3NSA4LjgyODEyNSAwLjM1OTM3NSA4Ljg3NSAwLjI1IEMgOS4xODc1IC0wLjI5Njg3NSA5LjU3ODEyNSAtMS4wNjI1IDEwLjUxNTYyNSAtMS44OTA2MjUgQyAxMS41IC0yLjc2NTYyNSAxMi40Njg3NSAtMy4xNTYyNSAxMy4yMDMxMjUgLTMuMzc1IEMgMTMuNDUzMTI1IC0zLjQ1MzEyNSAxMy40Njg3NSAtMy40Njg3NSAxMy41IC0zLjUgQyAxMy41MzEyNSAtMy41MTU2MjUgMTMuNTMxMjUgLTMuNTYyNSAxMy41MzEyNSAtMy41NzgxMjUgQyAxMy41MzEyNSAtMy42MDkzNzUgMTMuNTMxMjUgLTMuNjQwNjI1IDEzLjUxNTYyNSAtMy42NzE4NzUgTCAxMy40Njg3NSAtMy43MDMxMjUgQyAxMy40Mzc1IC0zLjcxODc1IDEzLjQyMTg3NSAtMy43MzQzNzUgMTMuMTU2MjUgLTMuODEyNSBDIDExLjIxODc1IC00LjM5MDYyNSA5Ljc4MTI1IC01LjY4NzUgOC45ODQzNzUgLTcuMjM0Mzc1IEMgOC44MjgxMjUgLTcuNTE1NjI1IDguODEyNSAtNy41MzEyNSA4LjYwOTM3NSAtNy41MzEyNSBDIDguNTE1NjI1IC03LjUzMTI1IDguMzI4MTI1IC03LjUzMTI1IDguMzI4MTI1IC03LjM3NSBDIDguMzI4MTI1IC03LjE4NzUgOS4wNjI1IC01LjkzNzUgOS43NjU2MjUgLTUuMjY1NjI1IEwgMS4yOTY4NzUgLTUuMjY1NjI1IEMgMS4wNDY4NzUgLTUuMjY1NjI1IDAuNzgxMjUgLTUuMjY1NjI1IDAuNzgxMjUgLTQuOTg0Mzc1IEMgMC43ODEyNSAtNC42ODc1IDEuMDYyNSAtNC42ODc1IDEuMzEyNSAtNC42ODc1IFogTSAxMC40MDYyNSAtNC42ODc1ICIvPgo8L3N5bWJvbD4KPC9nPgo8aW1hZ2UgaWQ9ImltYWdlNSIgd2lkdGg9IjM2IiBoZWlnaHQ9IjM2IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNRQUFBQWtDQUlBQUFCdVlnL1BBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFDWWtsRVFWUklpZDJYUzNMVFFCUkZXMnA5YkJuTEpuTGtjZ0trUXFVY2tzQW9JMFlVVld3Q2xzRmVXQUFEaWhsTFlBWVR4bnhjT0lTeWsrQTRjZnpUMTVJc0J2ZG1DeG0wSno2bGZxMldici83WGtzYkQ5NEpJWVFRTlNzRlZLbytRS3ZVQVZsNkE4aFhHc0MwU3NCb09PQlErQS9ROW1lQzgvay9YVHdDNk9JT2YzZTZtT0hWTTFDaE53RkJlaCt3bUhHbzVuTEl0UjNHeEhQQWgwOC9HVHkrQUx4NS9RQ3cwd29CWHNraGhXWFV0QUlVSjF6NDE4a1EwT3VmQTdhMlc0QVh4N3VBV1J3QjNuLzhETWdqRzdELzFBWHN2ZklBWnNaZ2hXVk1FbnBabWhMUTNxb0JMUHNod0cvU2xkcWEwNlRHUkExRFdqZ043Z0VXODVqQmtqY1VCWU1WbHRIUURWQzY1dXQzT2hYQWpzOGlXUVFza21WSlFReWR0Zkg1OFRQQW9EOEZISFk3bkpYUitFTG5UcWtybzNiU2V3dmE5THNBTzZOV2xzVkttRm5VMHlob3p5UmdFbDZlbndLaWNBeG9OMDNBaHBrQXlnV3JoTG95R3ZIa0duUTZwUWNQOTdZQmNVUmw4bUFDV0xzQndIWXRRTXVxTW1iSmpOVlhWNEF3WUgrWE1lK3NzSXgyUWNkOS8zTUd5SEtlVko1MDJTeHNnL2JVbDh5MHJGanlTczVTVUJVRW8yRFBFaWtycVV5Vk43WFJhWEs5MFNYejZ1dVhQdUJxMmdhME42bk12c1BnMG1CYUNzbFRUYnhjQWFJUlJWdlBlY1UxQ1FyTDZDUnNEUWN0WmxvY05RQi9mOUNldzV5dTdHL1F5M2FWeXRnVjlocVpzcUxLVy9VOG03T2t6dzFTV0VZeDVUdDZGaHZCeXdONnVWZmpvOXdNQ2I5bjlQdjhtdDNjS2pqa1ZhamVib3RTM3g0MmhkTlFYOGJVT1FMSjVCc2dtdlFBanh2OGVEbHFVcEh1aWwxRGxGU21UT2gzUjlEZDlScjFGQmEzSXl4NUJGSlh4dit0T3RZaHk0eWpIQUFBQUFCSlJVNUVya0pnZ2c9PSIvPgo8L2RlZnM+CjxnIGlkPSJzdXJmYWNlMSI+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoODguNjI3NjI1JSw4My41Mjk2NjMlLDUwLjU4NTkzOCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyMTIuNTc0MjE5IDcwLjg2NzE4OCBMIDI0MC45MTc5NjkgNzAuODY3MTg4IEwgMjQwLjkxNzk2OSA0Mi41MjM0MzggTCAyMTIuNTc0MjE5IDQyLjUyMzQzOCBaIE0gMjEyLjU3NDIxOSA3MC44NjcxODggIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoODguNjI3NjI1JSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDIxMi41NzQyMTkgOTkuNjEzMjgxIEwgMjIyLjAxOTUzMSA5OS42MTMyODEgTCAyMjIuMDE5NTMxIDcxLjI2NTYyNSBMIDIxMi41NzQyMTkgNzEuMjY1NjI1IFogTSAyMTIuNTc0MjE5IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4My41Mjk2NjMlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjIyLjAyMzQzOCA5OS42MTMyODEgTCAyMzEuNDY4NzUgOTkuNjEzMjgxIEwgMjMxLjQ2ODc1IDcxLjI2NTYyNSBMIDIyMi4wMjM0MzggNzEuMjY1NjI1IFogTSAyMjIuMDIzNDM4IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw1MC41ODU5MzglKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjMxLjQ2ODc1IDk5LjYxMzI4MSBMIDI0MC45MTc5NjkgOTkuNjEzMjgxIEwgMjQwLjkxNzk2OSA3MS4yNjU2MjUgTCAyMzEuNDY4NzUgNzEuMjY1NjI1IFogTSAyMzEuNDY4NzUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg4LjYyNzYyNSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxMS4xMDkzNzUgMjAxLjQ2NDg0NCBMIDQ1LjEyODkwNiAyMDEuNDY0ODQ0IEwgNDUuMTI4OTA2IDE2Ny40NDUzMTIgTCAxMS4xMDkzNzUgMTY3LjQ0NTMxMiBaIE0gMTEuMTA5Mzc1IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMTUuOTgyIiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjI0LjA3MzI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0yIiB4PSIzMi4xNjQ1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDgzLjUyOTY2MyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSA0NS4xMjg5MDYgMjAxLjQ2NDg0NCBMIDc5LjE0NDUzMSAyMDEuNDY0ODQ0IEwgNzkuMTQ0NTMxIDE2Ny40NDUzMTIgTCA0NS4xMjg5MDYgMTY3LjQ0NTMxMiBaIE0gNDUuMTI4OTA2IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iNDkuOTk3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjU4LjA4ODI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC00IiB4PSI2Ni4xNzk1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDAlLDUwLjU4NTkzOCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSA3OS4xNDQ1MzEgMjAxLjQ2NDg0NCBMIDExMy4xNjAxNTYgMjAxLjQ2NDg0NCBMIDExMy4xNjAxNTYgMTY3LjQ0NTMxMiBMIDc5LjE0NDUzMSAxNjcuNDQ1MzEyIFogTSA3OS4xNDQ1MzEgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0zIiB4PSI4NC4wMTMiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iOTIuMTA0MjU3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTUiIHg9IjEwMC4xOTU1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMCIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI3LjAyOTYzOCIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxNC4wNTkyNzYiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjEuMDg4OTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI4LjExODU1MiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzNS4xNDgxOSIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0Mi4xNzc4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDkuMjA3NDY2IiB5PSIyMjMuMTY4Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM0LjAxNiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0MS4wNDU2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDguMDc1Mjc2IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjU1LjEwNDkxNCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI2Mi4xMzQ1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNjkuMTY0MTkiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNzYuMTkzODI4IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjgzLjIyMzQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjY4LjAzMSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI3NS4wNjA2MzgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iODIuMDkwMjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijg5LjExOTkxNCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI5Ni4xNDk1NTIiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTAzLjE3OTE5IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjExMC4yMDg4MjgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTE3LjIzODQ2NiIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDI4LjMxODUgLTE1Mi42MDM4NzUgTCAyOC4zMTg1IC0xNDIuMjA1NDM4IEwgMjEuMjQwMzc1IC0xNDIuMjA1NDM4IEwgMjEuMjQwMzc1IC0xNTIuNjAzODc1IFogTSAyOC4zMTg1IC0xNTIuNjAzODc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gNjIuMzM0MTI1IC0xNjkuNjExNjg4IEwgNjIuMzM0MTI1IC0xNTkuMjEzMjUgTCA1NS4yNTYgLTE1OS4yMTMyNSBMIDU1LjI1NiAtMTY5LjYxMTY4OCBaIE0gNjIuMzM0MTI1IC0xNjkuNjExNjg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSA5Ni4zNDk3NSAtMTg2LjYxOTUgTCA5Ni4zNDk3NSAtMTc2LjIyMTA2MyBMIDg5LjI3MTYyNSAtMTc2LjIyMTA2MyBMIDg5LjI3MTYyNSAtMTg2LjYxOTUgWiBNIDk2LjM0OTc1IC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAtMC4wMDE4MTI1IC0xMzAuNTk2MDYzIEwgLTAuMDAxODEyNSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4LjExNzE4OCAyMTMuMjczNDM4IEMgMjguMzc4OTA2IDIxMS44OTA2MjUgMjkuMTU2MjUgMjA5LjY0NDUzMSAzMC4wNjI1IDIwOC4wOTM3NSBMIDI2LjE3NTc4MSAyMDguMDkzNzUgQyAyNy4wODIwMzEgMjA5LjY0NDUzMSAyNy44NTkzNzUgMjExLjg5MDYyNSAyOC4xMTcxODggMjEzLjI3MzQzOCAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDM0LjAxNzcxOSAtMTMwLjU5NjA2MyBMIDM0LjAxNzcxOSAtMTU0LjU0OTE4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDYyLjEzNjcxOSAyMzAuMjgxMjUgQyA2Mi4zOTQ1MzEgMjI4Ljg5ODQzOCA2My4xNzE4NzUgMjI2LjY1NjI1IDY0LjA3ODEyNSAyMjUuMTAxNTYyIEwgNjAuMTkxNDA2IDIyNS4xMDE1NjIgQyA2MS4wOTc2NTYgMjI2LjY1NjI1IDYxLjg3NSAyMjguODk4NDM4IDYyLjEzNjcxOSAyMzAuMjgxMjUgIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDY4LjAzMzM0NCAtMTMwLjU5NjA2MyBMIDY4LjAzMzM0NCAtMTcxLjU1NyAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gOTYuMTUyMzQ0IDI0Ny4yODkwNjIgQyA5Ni40MTAxNTYgMjQ1LjkwNjI1IDk3LjE4NzUgMjQzLjY2NDA2MiA5OC4wOTM3NSAyNDIuMTA5Mzc1IEwgOTQuMjA3MDMxIDI0Mi4xMDkzNzUgQyA5NS4xMTMyODEgMjQzLjY2NDA2MiA5NS44OTA2MjUgMjQ1LjkwNjI1IDk2LjE1MjM0NCAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iNDguMTQ2IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjgyLjE2MiIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjExNi4xNzciIHk9IjI4MS4yNjIiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsNzkuMjE0NDc4JSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjQwLjkxNzk2OSA3MC44NjcxODggTCAyNjkuMjY1NjI1IDcwLjg2NzE4OCBMIDI2OS4yNjU2MjUgNDIuNTIzNDM4IEwgMjQwLjkxNzk2OSA0Mi41MjM0MzggWiBNIDI0MC45MTc5NjkgNzAuODY3MTg4ICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNDAuOTE3OTY5IDk5LjYxMzI4MSBMIDI1MC4zNjcxODggOTkuNjEzMjgxIEwgMjUwLjM2NzE4OCA3MS4yNjU2MjUgTCAyNDAuOTE3OTY5IDcxLjI2NTYyNSBaIE0gMjQwLjkxNzk2OSA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuMjE0NDc4JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI1MC4zNjcxODggOTkuNjEzMjgxIEwgMjU5LjgxNjQwNiA5OS42MTMyODEgTCAyNTkuODE2NDA2IDcxLjI2NTYyNSBMIDI1MC4zNjcxODggNzEuMjY1NjI1IFogTSAyNTAuMzY3MTg4IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjU5LjgxNjQwNiA5OS42MTMyODEgTCAyNjkuMjY1NjI1IDk5LjYxMzI4MSBMIDI2OS4yNjU2MjUgNzEuMjY1NjI1IEwgMjU5LjgxNjQwNiA3MS4yNjU2MjUgWiBNIDI1OS44MTY0MDYgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxMTMuMTYwMTU2IDIwMS40NjQ4NDQgTCAxNDcuMTc1NzgxIDIwMS40NjQ4NDQgTCAxNDcuMTc1NzgxIDE2Ny40NDUzMTIgTCAxMTMuMTYwMTU2IDE2Ny40NDUzMTIgWiBNIDExMy4xNjAxNTYgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIxMTguMDI5IiB5PSIxOTAuMjM5Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjEyNi4xMjAyNTciIHk9IjE5MC4yMzkiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMTM0LjIxMTUxNCIgeT0iMTkwLjIzOSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuMjE0NDc4JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE0Ny4xNzU3ODEgMjAxLjQ2NDg0NCBMIDE4MS4xOTE0MDYgMjAxLjQ2NDg0NCBMIDE4MS4xOTE0MDYgMTY3LjQ0NTMxMiBMIDE0Ny4xNzU3ODEgMTY3LjQ0NTMxMiBaIE0gMTQ3LjE3NTc4MSAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjE1Mi4wNDUiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMTYwLjEzNjI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIxNjguMjI3NTE0IiB5PSIxOTAuMTAxIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMTgxLjE5MTQwNiAyMDEuNDY0ODQ0IEwgMjE1LjIwNzAzMSAyMDEuNDY0ODQ0IEwgMjE1LjIwNzAzMSAxNjcuNDQ1MzEyIEwgMTgxLjE5MTQwNiAxNjcuNDQ1MzEyIFogTSAxODEuMTkxNDA2IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMyIgeD0iMTg2LjA2IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTYiIHg9IjE5NC4xNTEyNTciIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMjAyLjI0MjUxNCIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMDIuMDQ3IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEwOS4wNzY2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTE2LjEwNjI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMjMuMTM1OTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEzMC4xNjU1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTM3LjE5NTE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE0NC4yMjQ4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTUxLjI1NDQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMzYuMDYzIiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE0My4wOTI2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTUwLjEyMjI3NiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxNTcuMTUxOTE0IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE2NC4xODE1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTcxLjIxMTE5IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE3OC4yNDA4MjgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTg1LjI3MDQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE3My41OTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTgwLjYyMzYzOCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxODcuNjUzMjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE5NC42ODI5MTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjAxLjcxMjU1MiIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyMDguNzQyMTkiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjE1Ljc3MTgyOCIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDEzMC4zNjUzNzUgLTE1Mi42MDM4NzUgTCAxMzAuMzY1Mzc1IC0xNDIuMjA1NDM4IEwgMTIzLjI5MTE1NiAtMTQyLjIwNTQzOCBMIDEyMy4yOTExNTYgLTE1Mi42MDM4NzUgWiBNIDEzMC4zNjUzNzUgLTE1Mi42MDM4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNjQuMzg0OTA2IC0xNjkuNjExNjg4IEwgMTY0LjM4NDkwNiAtMTU5LjIxMzI1IEwgMTU3LjMwNjc4MSAtMTU5LjIxMzI1IEwgMTU3LjMwNjc4MSAtMTY5LjYxMTY4OCBaIE0gMTY0LjM4NDkwNiAtMTY5LjYxMTY4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTk0Ljg4NDkwNiAtMTg2LjYxOTUgTCAxOTQuODg0OTA2IC0xNzYuMjIxMDYzIEwgMTg3LjgwNjc4MSAtMTc2LjIyMTA2MyBMIDE4Ny44MDY3ODEgLTE4Ni42MTk1IFogTSAxOTQuODg0OTA2IC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxMDIuMDQ4OTY5IC0xMzAuNTk2MDYzIEwgMTAyLjA0ODk2OSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDEzMC4xNjc5NjkgMjEzLjI3MzQzOCBDIDEzMC40MjU3ODEgMjExLjg5MDYyNSAxMzEuMjAzMTI1IDIwOS42NDQ1MzEgMTMyLjEwOTM3NSAyMDguMDkzNzUgTCAxMjguMjI2NTYyIDIwOC4wOTM3NSBDIDEyOS4xMzI4MTIgMjA5LjY0NDUzMSAxMjkuOTEwMTU2IDIxMS44OTA2MjUgMTMwLjE2Nzk2OSAyMTMuMjczNDM4ICIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjc5NzAxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTM2LjA2NDU5NCAtMTMwLjU5NjA2MyBMIDEzNi4wNjQ1OTQgLTE1NC41NDkxODggIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxNjQuMTgzNTk0IDIzMC4yODEyNSBDIDE2NC40NDE0MDYgMjI4Ljg5ODQzOCAxNjUuMjE4NzUgMjI2LjY1NjI1IDE2Ni4xMjUgMjI1LjEwMTU2MiBMIDE2Mi4yNDIxODggMjI1LjEwMTU2MiBDIDE2My4xNDg0MzggMjI2LjY1NjI1IDE2My45MjU3ODEgMjI4Ljg5ODQzOCAxNjQuMTgzNTk0IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTcwLjA4MDIxOSAtMTMwLjU5NjA2MyBMIDE3MC4wODAyMTkgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE5OC4xOTkyMTkgMjQ3LjI4OTA2MiBDIDE5OC40NTcwMzEgMjQ1LjkwNjI1IDE5OS4yMzQzNzUgMjQzLjY2NDA2MiAyMDAuMTQ0NTMxIDI0Mi4xMDkzNzUgTCAxOTYuMjU3ODEyIDI0Mi4xMDkzNzUgQyAxOTcuMTY0MDYyIDI0My42NjQwNjIgMTk3Ljk0MTQwNiAyNDUuOTA2MjUgMTk4LjE5OTIxOSAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMTUwLjE5MyIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC02IiB4PSIxODQuMjA5IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMjE0LjcxIiB5PSIyODEuMjYyIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDg3Ljg0MTc5NyUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI2OS4yNjU2MjUgNzAuODY3MTg4IEwgMjk3LjYxMzI4MSA3MC44NjcxODggTCAyOTcuNjEzMjgxIDQyLjUyMzQzOCBMIDI2OS4yNjU2MjUgNDIuNTIzNDM4IFogTSAyNjkuMjY1NjI1IDcwLjg2NzE4OCAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjY5LjI2NTYyNSA5OS42MTMyODEgTCAyNzguNzE0ODQ0IDk5LjYxMzI4MSBMIDI3OC43MTQ4NDQgNzEuMjY1NjI1IEwgMjY5LjI2NTYyNSA3MS4yNjU2MjUgWiBNIDI2OS4yNjU2MjUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDg3Ljg0MTc5NyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNzguNzE0ODQ0IDk5LjYxMzI4MSBMIDI4OC4xNjQwNjIgOTkuNjEzMjgxIEwgMjg4LjE2NDA2MiA3MS4yNjU2MjUgTCAyNzguNzE0ODQ0IDcxLjI2NTYyNSBaIE0gMjc4LjcxNDg0NCA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4OC4xNjQwNjIgOTkuNjEzMjgxIEwgMjk3LjYxMzI4MSA5OS42MTMyODEgTCAyOTcuNjEzMjgxIDcxLjI2NTYyNSBMIDI4OC4xNjQwNjIgNzEuMjY1NjI1IFogTSAyODguMTY0MDYyIDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjE1LjIwNzAzMSAyMDEuNDY0ODQ0IEwgMjQ5LjIyMjY1NiAyMDEuNDY0ODQ0IEwgMjQ5LjIyMjY1NiAxNjcuNDQ1MzEyIEwgMjE1LjIwNzAzMSAxNjcuNDQ1MzEyIFogTSAyMTUuMjA3MDMxIDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMjIwLjA3NiIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC03IiB4PSIyMjguMTY3MjU3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTgiIHg9IjIzNi4yNTg1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDg3Ljg0MTc5NyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNDkuMjIyNjU2IDIwMS40NjQ4NDQgTCAyODMuMjQyMTg4IDIwMS40NjQ4NDQgTCAyODMuMjQyMTg4IDE2Ny40NDUzMTIgTCAyNDkuMjIyNjU2IDE2Ny40NDUzMTIgWiBNIDI0OS4yMjI2NTYgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIyNTQuMDkyIiB5PSIxOTAuMjM5Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjI2Mi4xODMyNTciIHk9IjE5MC4yMzkiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMjcwLjI3NDUxNCIgeT0iMTkwLjIzOSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4My4yNDIxODggMjAxLjQ2NDg0NCBMIDMxNy4yNTc4MTIgMjAxLjQ2NDg0NCBMIDMxNy4yNTc4MTIgMTY3LjQ0NTMxMiBMIDI4My4yNDIxODggMTY3LjQ0NTMxMiBaIE0gMjgzLjI0MjE4OCAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTkiIHg9IjI5Mi4xNTMiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOSIgeD0iMzAwLjI0NDI1NyIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMDQuMDk1IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjIxMS4xMjQ2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjE4LjE1NDI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMjUuMTgzOTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjIzMi4yMTM1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjM5LjI0MzE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI0Ni4yNzI4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjUzLjMwMjQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMzguMTEiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjQ1LjEzOTYzOCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyNTIuMTY5Mjc2IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI1OS4xOTg5MTQiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjY2LjIyODU1MiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyNzMuMjU4MTkiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjgwLjI4NzgyOCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyODcuMzE3NDY2IiB5PSIyNDAuMTc2Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjc1LjY0MSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyODIuNjcwNjM4IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjI4OS43MDAyNzYiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjk2LjcyOTkxNCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzMDMuNzU5NTUyIiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjMxMC43ODkxOSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzMTcuODE4ODI4IiB5PSIyNTcuMTg0Ii8+CjwvZz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMTAwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjMyLjQxNjE1NiAtMTUyLjYwMzg3NSBMIDIzMi40MTYxNTYgLTE0Mi4yMDU0MzggTCAyMjUuMzM4MDMxIC0xNDIuMjA1NDM4IEwgMjI1LjMzODAzMSAtMTUyLjYwMzg3NSBaIE0gMjMyLjQxNjE1NiAtMTUyLjYwMzg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDI2Ni40MzE3ODEgLTE2OS42MTE2ODggTCAyNjYuNDMxNzgxIC0xNTkuMjEzMjUgTCAyNTkuMzUzNjU2IC0xNTkuMjEzMjUgTCAyNTkuMzUzNjU2IC0xNjkuNjExNjg4IFogTSAyNjYuNDMxNzgxIC0xNjkuNjExNjg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyOTYuOTMxNzgxIC0xODYuNjE5NSBMIDI5Ni45MzE3ODEgLTE3Ni4yMjEwNjMgTCAyODkuODUzNjU2IC0xNzYuMjIxMDYzIEwgMjg5Ljg1MzY1NiAtMTg2LjYxOTUgWiBNIDI5Ni45MzE3ODEgLTE4Ni42MTk1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDIwNC4wOTU4NDQgLTEzMC41OTYwNjMgTCAyMDQuMDk1ODQ0IC0xMzcuNTQxMzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjMyLjIxNDg0NCAyMTMuMjczNDM4IEMgMjMyLjQ3NjU2MiAyMTEuODkwNjI1IDIzMy4yNTM5MDYgMjA5LjY0NDUzMSAyMzQuMTYwMTU2IDIwOC4wOTM3NSBMIDIzMC4yNzM0MzggMjA4LjA5Mzc1IEMgMjMxLjE3OTY4OCAyMDkuNjQ0NTMxIDIzMS45NTcwMzEgMjExLjg5MDYyNSAyMzIuMjE0ODQ0IDIxMy4yNzM0MzggIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyMzguMTE1Mzc1IC0xMzAuNTk2MDYzIEwgMjM4LjExNTM3NSAtMTU0LjU0OTE4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI2Ni4yMzQzNzUgMjMwLjI4MTI1IEMgMjY2LjQ5MjE4OCAyMjguODk4NDM4IDI2Ny4yNjk1MzEgMjI2LjY1NjI1IDI2OC4xNzU3ODEgMjI1LjEwMTU2MiBMIDI2NC4yODkwNjIgMjI1LjEwMTU2MiBDIDI2NS4xOTUzMTIgMjI2LjY1NjI1IDI2NS45NzI2NTYgMjI4Ljg5ODQzOCAyNjYuMjM0Mzc1IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjcyLjEzMSAtMTMwLjU5NjA2MyBMIDI3Mi4xMzEgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMwMC4yNSAyNDcuMjg5MDYyIEMgMzAwLjUwNzgxMiAyNDUuOTA2MjUgMzAxLjI4NTE1NiAyNDMuNjY0MDYyIDMwMi4xOTE0MDYgMjQyLjEwOTM3NSBMIDI5OC4zMDQ2ODggMjQyLjEwOTM3NSBDIDI5OS4yMTA5MzggMjQzLjY2NDA2MiAyOTkuOTg4MjgxIDI0NS45MDYyNSAzMDAuMjUgMjQ3LjI4OTA2MiAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjI1Mi4yNDEiIHk9IjI4MS4yNjIiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMjg2LjI1NiIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTYiIHg9IjMxNi43NTciIHk9IjI4MS4yNjIiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDk2LjA3Njk2NSUsODguMjMzOTQ4JSwzNC41MTA4MDMlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjk3LjYxMzI4MSA3MC44NjcxODggTCAzMjUuOTYwOTM4IDcwLjg2NzE4OCBMIDMyNS45NjA5MzggNDIuNTIzNDM4IEwgMjk3LjYxMzI4MSA0Mi41MjM0MzggWiBNIDI5Ny42MTMyODEgNzAuODY3MTg4ICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDk2LjA3Njk2NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyOTcuNjEzMjgxIDk5LjYxMzI4MSBMIDMwNy4wNjI1IDk5LjYxMzI4MSBMIDMwNy4wNjI1IDcxLjI2NTYyNSBMIDI5Ny42MTMyODEgNzEuMjY1NjI1IFogTSAyOTcuNjEzMjgxIDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4OC4yMzM5NDglLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzA3LjA2MjUgOTkuNjEzMjgxIEwgMzE2LjUxMTcxOSA5OS42MTMyODEgTCAzMTYuNTExNzE5IDcxLjI2NTYyNSBMIDMwNy4wNjI1IDcxLjI2NTYyNSBaIE0gMzA3LjA2MjUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDAlLDM0LjUxMDgwMyUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAzMTYuNTExNzE5IDk5LjYxMzI4MSBMIDMyNS45NjA5MzggOTkuNjEzMjgxIEwgMzI1Ljk2MDkzOCA3MS4yNjU2MjUgTCAzMTYuNTExNzE5IDcxLjI2NTYyNSBaIE0gMzE2LjUxMTcxOSA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoOTYuMDc2OTY1JSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMxNy4yNTc4MTIgMjAxLjQ2NDg0NCBMIDM1MS4yNzM0MzggMjAxLjQ2NDg0NCBMIDM1MS4yNzM0MzggMTY3LjQ0NTMxMiBMIDMxNy4yNTc4MTIgMTY3LjQ0NTMxMiBaIE0gMzE3LjI1NzgxMiAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjMyMi4xMjQiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMzMwLjIxNTI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC04IiB4PSIzMzguMzA2NTE0IiB5PSIxOTAuMTAxIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4OC4yMzM5NDglLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzUxLjI3MzQzOCAyMDEuNDY0ODQ0IEwgMzg1LjI4OTA2MiAyMDEuNDY0ODQ0IEwgMzg1LjI4OTA2MiAxNjcuNDQ1MzEyIEwgMzUxLjI3MzQzOCAxNjcuNDQ1MzEyIFogTSAzNTEuMjczNDM4IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMzU2LjE0IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjM2NC4yMzEyNTciIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOCIgeD0iMzcyLjMyMjUxNCIgeT0iMTkwLjEwMSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDM4NS4yODkwNjIgMjAxLjQ2NDg0NCBMIDQxOS4zMDQ2ODggMjAxLjQ2NDg0NCBMIDQxOS4zMDQ2ODggMTY3LjQ0NTMxMiBMIDM4NS4yODkwNjIgMTY3LjQ0NTMxMiBaIE0gMzg1LjI4OTA2MiAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTkiIHg9IjM5NC4yMDEiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOSIgeD0iNDAyLjI5MjI1NyIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzMDYuMTQyIiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjMxMy4xNzE2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzIwLjIwMTI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzMjcuMjMwOTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjMzNC4yNjA1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzQxLjI5MDE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM0OC4zMTk4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzU1LjM0OTQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzNDAuMTU4IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM0Ny4xODc2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzU0LjIxNzI3NiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzNjEuMjQ2OTE0IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM2OC4yNzY1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMzc1LjMwNjE5IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM4Mi4zMzU4MjgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzg5LjM2NTQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM3Ny42ODgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMzg0LjcxNzYzOCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzOTEuNzQ3Mjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM5OC43NzY5MTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDA1LjgwNjU1MiIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI0MTIuODM2MTkiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDE5Ljg2NTgyOCIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDMzNC40NjMwMzEgLTE1Mi42MDM4NzUgTCAzMzQuNDYzMDMxIC0xNDIuMjA1NDM4IEwgMzI3LjM4NDkwNiAtMTQyLjIwNTQzOCBMIDMyNy4zODQ5MDYgLTE1Mi42MDM4NzUgWiBNIDMzNC40NjMwMzEgLTE1Mi42MDM4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAzNjguNDc4NjU2IC0xNjkuNjExNjg4IEwgMzY4LjQ3ODY1NiAtMTU5LjIxMzI1IEwgMzYxLjQwNDQzNyAtMTU5LjIxMzI1IEwgMzYxLjQwNDQzNyAtMTY5LjYxMTY4OCBaIE0gMzY4LjQ3ODY1NiAtMTY5LjYxMTY4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzk4Ljk4MjU2MiAtMTg2LjYxOTUgTCAzOTguOTgyNTYyIC0xNzYuMjIxMDYzIEwgMzkxLjkwNDQzNyAtMTc2LjIyMTA2MyBMIDM5MS45MDQ0MzcgLTE4Ni42MTk1IFogTSAzOTguOTgyNTYyIC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAzMDYuMTQ2NjI1IC0xMzAuNTk2MDYzIEwgMzA2LjE0NjYyNSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMzNC4yNjU2MjUgMjEzLjI3MzQzOCBDIDMzNC41MjM0MzggMjExLjg5MDYyNSAzMzUuMzAwNzgxIDIwOS42NDQ1MzEgMzM2LjIwNzAzMSAyMDguMDkzNzUgTCAzMzIuMzI0MjE5IDIwOC4wOTM3NSBDIDMzMy4yMzA0NjkgMjA5LjY0NDUzMSAzMzQuMDA3ODEyIDIxMS44OTA2MjUgMzM0LjI2NTYyNSAyMTMuMjczNDM4ICIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjc5NzAxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzQwLjE2MjI1IC0xMzAuNTk2MDYzIEwgMzQwLjE2MjI1IC0xNTQuNTQ5MTg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzY4LjI4MTI1IDIzMC4yODEyNSBDIDM2OC41MzkwNjIgMjI4Ljg5ODQzOCAzNjkuMzE2NDA2IDIyNi42NTYyNSAzNzAuMjIyNjU2IDIyNS4xMDE1NjIgTCAzNjYuMzM5ODQ0IDIyNS4xMDE1NjIgQyAzNjcuMjQ2MDk0IDIyNi42NTYyNSAzNjguMDIzNDM4IDIyOC44OTg0MzggMzY4LjI4MTI1IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzc0LjE3Nzg3NSAtMTMwLjU5NjA2MyBMIDM3NC4xNzc4NzUgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDQwMi4yOTY4NzUgMjQ3LjI4OTA2MiBDIDQwMi41NTQ2ODggMjQ1LjkwNjI1IDQwMy4zMzIwMzEgMjQzLjY2NDA2MiA0MDQuMjM4MjgxIDI0Mi4xMDkzNzUgTCA0MDAuMzU1NDY5IDI0Mi4xMDkzNzUgQyA0MDEuMjYxNzE5IDI0My42NjQwNjIgNDAyLjAzOTA2MiAyNDUuOTA2MjUgNDAyLjI5Njg3NSAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMyIgeD0iMzU0LjI4OCIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0zIiB4PSIzODguMzA0IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iNDE4LjgwNSIgeT0iMjgxLjI2MiIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE4NC4yNTYgLTI4Ljc0NDUgTCAtMTcuMjA4ODQ0IC05Ni4xNzgwOTQgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw1MCUsNTAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyOTguMDQxMTU2IC0yOC43NDQ1IEwgMzkxLjM4NDkwNiAtOTYuMTc4MDk0ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNTAlLDUwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTcuNjE1Mzc1IC0yMTIuODgxMjE5IEwgMTcuNjE1Mzc1IC0xOTYuMjE3MTU2IEwgMjY4LjY0MjcxOSAtMTk2LjIxNzE1NiBMIDI2OC42NDI3MTkgLTIxMi44ODEyMTkgWiBNIDE3LjYxNTM3NSAtMjEyLjg4MTIxOSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMi0xIiB4PSIxNzUuNTA5IiB5PSI2Mi4yMDQiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDItMSIgeD0iMTg2LjUwOTQ5MyIgeT0iNjIuMjA0Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgyLTEiIHg9IjE5Ny41MzQ3NzMiIHk9IjYyLjIwNCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMi0xIiB4PSIzMzQuMDk4IiB5PSI2Mi4yMDQiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDItMSIgeD0iMzQ1LjA5ODQ5MyIgeT0iNjIuMjA0Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgyLTEiIHg9IjM1Ni4xMjM3NzMiIHk9IjYyLjIwNCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMy0xIiB4PSI0MzUuMDM4IiB5PSIyNzYuMzEyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgzLTEiIHg9IjQ0MS4zMjE2MzYiIHk9IjI3Ni4zMTIiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDMtMSIgeD0iNDQ3LjYxOTYxNyIgeT0iMjc2LjMxMiIvPgo8L2c+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlNSIgdHJhbnNmb3JtPSJtYXRyaXgoMy4xNDk4LDAsMCwzLjE0OTgsOC41OTEsLTAuMDAwOCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6NS42NjkzNDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDk5LjcyODY1NiAxNC4zNzI2ODcgTCAxMjguMzAyODc1IDE0LjM3MjY4NyAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE2Ni4zMjAzMTIgNTYuNjk1MzEyIEwgMTUwLjQ4NDM3NSA0OC43NzczNDQgTCAxNTYuNDIxODc1IDU2LjY5NTMxMiBMIDE1MC40ODQzNzUgNjQuNjEzMjgxICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iNzAuMjY5IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijc0LjMyODk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI4MS4zNTg2MTMiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iODguMzg4MjUxIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijk1LjQxNzg4OSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxMDIuNDQ3NTI3IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjEwOS40NzcxNjUiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTE2LjUwNjgwMyIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxMjMuNTM2NDQxIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjEzMC41NjYwNzkiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTM5LjE0NTEwNiIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxNDYuMTc0NzQ0IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE1My4yMDQzODIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTYwLjIzNDAyIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjE2Ny4yNjM2NTgiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTc0LjI5MzI5NiIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxODEuMzIyOTM0IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE4OC4zNTI1NzIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNCIgeD0iMTk1LjM4MjIxIiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTUiIHg9IjIwMy45NjEyMzgiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNiIgeD0iMjEyLjc0MTExMiIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoNC0xIiB4PSIyMjEuNDc4IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTMiIHg9IjI0MC41MDEiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNyIgeD0iMjQ0LjU2MDk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS04IiB4PSIyNTEuNTkwNjEzIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjI1OC42MjAyNTEiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjY3LjE5OTI3OCIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyNzQuMjI4OTE2IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjI4MS4yNTg1NTQiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNCIgeD0iMjg4LjI4ODE5MiIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS01IiB4PSIyOTYuODY3MjIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNiIgeD0iMzA1LjY0NzA5NCIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoNC0xIiB4PSIzMTQuMzg0IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTMiIHg9IjMzMy40MDciIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtOSIgeD0iMzM3LjQ2Njk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xMCIgeD0iMzQxLjM2OTE0MSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS05IiB4PSIzNDguNTcwOTMzIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjM1Mi40NzMxIiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTkiIHg9IjM2MS4wNTIxMjciIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTEiIHg9IjM2NC45NTQyOTQiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtOSIgeD0iMzcxLjE5NDg5MSIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS01IiB4PSIzNzkuNzczOTE4IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTYiIHg9IjM4OC41NTM3OTMiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDQtMSIgeD0iMzk3LjI5IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTkiIHg9IjQxNi4zMTMiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTAiIHg9IjQyMC4yMTUxNjYiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTEiIHg9IjQyNy44MDQzMDYiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNSIgeD0iNDM0LjA0NDkwMyIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS05IiB4PSI0NDIuODI0Nzc4IiB5PSIzMzUuNTkxIi8+CjwvZz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6NS42NjkzNDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDU3LjU2MDY4OCAtMjQwLjM0NjA2MyBMIDU3LjU2MDY4OCAtMjIwLjM1Nzc4MSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDg1LjY3OTY4OCAzMjEuMzEyNSBMIDkzLjU5NzY1NiAzMDUuNDc2NTYyIEwgODUuNjc5Njg4IDMxMS40MTQwNjIgTCA3Ny43NjE3MTkgMzA1LjQ3NjU2MiAiLz4KPC9nPgo8L3N2Zz4K"
alt="Prinzipbild einer in einem Bild versteckten Nachricht mit einem Bit pro Farbwert" />
<figcaption aria-hidden="true">Prinzipbild einer in einem Bild
versteckten Nachricht mit einem Bit pro Farbwert</figcaption>
</figure>
<figcaption>Prinzipbild einer in einem Bild versteckten Nachricht mit
einem Bit pro Farbwert</figcaption>
</figure>
<p><img
src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iNDU0Ljg0N3B0IiBoZWlnaHQ9IjM0Mi40OThwdCIgdmlld0JveD0iMCAwIDQ1NC44NDcgMzQyLjQ5OCIgdmVyc2lvbj0iMS4xIj4KPGRlZnM+CjxnPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTAiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSIiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtMSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy4yNjU2MjUgMCBMIDcuMjY1NjI1IC0xLjE3MTg3NSBMIDQuMzQzNzUgLTEuMTcxODc1IEMgNC4xMjUgLTEuMTcxODc1IDMuOTIxODc1IC0xLjE1NjI1IDMuNzE4NzUgLTEuMTU2MjUgTCAyIC0xLjE1NjI1IEwgMiAtMS4xNzE4NzUgTCA0LjQzNzUgLTMuNjU2MjUgQyA0LjkyMTg3NSAtNC4xNTYyNSA1LjY0MDYyNSAtNC43NSA2LjE0MDYyNSAtNS4zNTkzNzUgQyA2LjYyNSAtNS45Mzc1IDcuMjY1NjI1IC02Ljc2NTYyNSA3LjI2NTYyNSAtNy45Njg3NSBDIDcuMjY1NjI1IC05Ljg1OTM3NSA1Ljk4NDM3NSAtMTEuNTc4MTI1IDMuODI4MTI1IC0xMS41NzgxMjUgQyAyLjEyNSAtMTEuNTc4MTI1IDEuMTQwNjI1IC0xMC41IDAuNjcxODc1IC04LjgyODEyNSBMIDEuMzQzNzUgLTcuOTA2MjUgQyAxLjcxODc1IC05LjQ2ODc1IDIuMjUgLTEwLjQ2ODc1IDMuNTkzNzUgLTEwLjQ2ODc1IEMgNS4wNzgxMjUgLTEwLjQ2ODc1IDUuOTA2MjUgLTkuMjY1NjI1IDUuOTA2MjUgLTcuOTM3NSBDIDUuOTA2MjUgLTYuMzU5Mzc1IDQuNzAzMTI1IC01LjEyNSAzLjc4MTI1IC00LjIxODc1IEwgMC44MTI1IC0xLjEwOTM3NSBMIDAuODEyNSAwIFogTSA3LjI2NTYyNSAwICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMC0yIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA3LjQwNjI1IC0zLjgyODEyNSBDIDcuNDA2MjUgLTUuOTUzMTI1IDYuMzU5Mzc1IC03Ljg1OTM3NSA0Ljc4MTI1IC03Ljg1OTM3NSBDIDMuNjU2MjUgLTcuODU5Mzc1IDIuNjcxODc1IC03LjI1IDIuMDYyNSAtNi40ODQzNzUgQyAyLjIzNDM3NSAtOC45MjE4NzUgMy4zNzUgLTEwLjUxNTYyNSA1LjAxNTYyNSAtMTAuNTE1NjI1IEMgNS40NTMxMjUgLTEwLjUxNTYyNSA2LjA0Njg3NSAtMTAuNDUzMTI1IDYuNzE4NzUgLTEwLjE1NjI1IEwgNi43MTg3NSAtMTEuMjM0Mzc1IEMgNS45ODQzNzUgLTExLjUxNTYyNSA1LjQ2ODc1IC0xMS41NzgxMjUgNSAtMTEuNTc4MTI1IEMgMi43NSAtMTEuNTc4MTI1IDAuNjcxODc1IC05LjIzNDM3NSAwLjY3MTg3NSAtNS41MzEyNSBDIDAuNjcxODc1IC0wLjc5Njg3NSAyLjY1NjI1IDAuMjgxMjUgNC4wNjI1IDAuMjgxMjUgQyA0Ljg0Mzc1IDAuMjgxMjUgNS42MDkzNzUgMC4wMzEyNSA2LjM1OTM3NSAtMC44MjgxMjUgQyA3LjEwOTM3NSAtMS43MzQzNzUgNy40MDYyNSAtMi41IDcuNDA2MjUgLTMuODI4MTI1IFogTSA2LjA0Njg3NSAtMy44MjgxMjUgQyA2LjA0Njg3NSAtMy4xNTYyNSA2LjA0Njg3NSAtMi40ODQzNzUgNS42NDA2MjUgLTEuNzk2ODc1IEMgNS4zMjgxMjUgLTEuMjUgNC44OTA2MjUgLTAuNzk2ODc1IDQuMDYyNSAtMC43OTY4NzUgQyAyLjQyMTg3NSAtMC43OTY4NzUgMi4xNTYyNSAtMy4wNzgxMjUgMi4wNzgxMjUgLTMuNzY1NjI1IEMgMi4wNzgxMjUgLTMuOTA2MjUgMi4wNzgxMjUgLTQgMi4wOTM3NSAtNC4yNSBDIDIuMDkzNzUgLTUuNTkzNzUgMi44NzUgLTYuNzk2ODc1IDQuMTI1IC02Ljc5Njg3NSBDIDQuOTM3NSAtNi43OTY4NzUgNS4zNTkzNzUgLTYuMzc1IDUuNjcxODc1IC01Ljg0Mzc1IEMgNi4wMzEyNSAtNS4xNzE4NzUgNi4wNDY4NzUgLTQuNTMxMjUgNi4wNDY4NzUgLTMuODI4MTI1IFogTSA2LjA0Njg3NSAtMy44MjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDYuOTIxODc1IDAgTCA2LjkyMTg3NSAtMSBMIDQuODkwNjI1IC0xIEwgNC44OTA2MjUgLTExLjU3ODEyNSBMIDQuNTYyNSAtMTEuNTc4MTI1IEMgMy42NDA2MjUgLTEwLjYwOTM3NSAyLjU0Njg3NSAtMTAuNDY4NzUgMS40NTMxMjUgLTEwLjQzNzUgTCAxLjQ1MzEyNSAtOS40Mzc1IEMgMS45NTMxMjUgLTkuNDUzMTI1IDIuNzUgLTkuNDg0Mzc1IDMuNTYyNSAtOS44NDM3NSBMIDMuNTYyNSAtMSBMIDEuNTMxMjUgLTEgTCAxLjUzMTI1IDAgWiBNIDYuOTIxODc1IDAgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTQiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDA2MjUgLTMuMTcxODc1IEMgNy40MDYyNSAtNC41MzEyNSA2LjQ1MzEyNSAtNS42NzE4NzUgNS4xNzE4NzUgLTYuMDkzNzUgQyA2LjIwMzEyNSAtNi42NTYyNSA2Ljk1MzEyNSAtNy43MzQzNzUgNi45NTMxMjUgLTguOTY4NzUgQyA2Ljk1MzEyNSAtMTAuNDIxODc1IDUuNjI1IC0xMS41NzgxMjUgNC4wMTU2MjUgLTExLjU3ODEyNSBDIDIuNTMxMjUgLTExLjU3ODEyNSAxLjM3NSAtMTAuNjU2MjUgMC44OTA2MjUgLTkuNjcxODc1IEMgMS4wMTU2MjUgLTkuNSAxLjMyODEyNSAtOSAxLjQ4NDM3NSAtOC43NSBDIDEuODU5Mzc1IC05Ljc2NTYyNSAyLjg0Mzc1IC0xMC41MTU2MjUgNCAtMTAuNTE1NjI1IEMgNC45NTMxMjUgLTEwLjUxNTYyNSA1LjU5Mzc1IC05Ljg5MDYyNSA1LjU5Mzc1IC04Ljk2ODc1IEMgNS41OTM3NSAtOC4wMzEyNSA1IC02Ljk4NDM3NSAzLjk4NDM3NSAtNi43NSBDIDMuOTA2MjUgLTYuNzUgMi44NDM3NSAtNi42NDA2MjUgMi43MDMxMjUgLTYuNjI1IEwgMi43MDMxMjUgLTUuNTc4MTI1IEwgMy44NzUgLTUuNTc4MTI1IEMgNS41IC01LjU3ODEyNSA1Ljk1MzEyNSAtNC4xNzE4NzUgNS45NTMxMjUgLTMuMTg3NSBDIDUuOTUzMTI1IC0xLjg0Mzc1IDUuMjAzMTI1IC0wLjc5Njg3NSAzLjk1MzEyNSAtMC43OTY4NzUgQyAzIC0wLjc5Njg3NSAxLjY0MDYyNSAtMS4yODEyNSAwLjg1OTM3NSAtMi41NDY4NzUgQyAwLjczNDM3NSAtMS45NTMxMjUgMC43MzQzNzUgLTEuOTA2MjUgMC42NzE4NzUgLTEuNSBDIDEuNDg0Mzc1IC0wLjMxMjUgMi43OTY4NzUgMC4yODEyNSA0IDAuMjgxMjUgQyA1Ljk1MzEyNSAwLjI4MTI1IDcuNDA2MjUgLTEuMzU5Mzc1IDcuNDA2MjUgLTMuMTcxODc1IFogTSA3LjQwNjI1IC0zLjE3MTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtNSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy40MDYyNSAtNS43NjU2MjUgQyA3LjQwNjI1IC0xMC43NjU2MjUgNS4yNSAtMTEuNTc4MTI1IDQuMDkzNzUgLTExLjU3ODEyNSBDIDIuOTM3NSAtMTEuNTc4MTI1IDIuMjAzMTI1IC0xMS4wNDY4NzUgMS41NjI1IC0xMC4yMzQzNzUgQyAwLjgxMjUgLTkuMjgxMjUgMC42NzE4NzUgLTguNDM3NSAwLjY3MTg3NSAtNy40NTMxMjUgQyAwLjY3MTg3NSAtNi4yODEyNSAwLjg3NSAtNS41NjI1IDEuMzU5Mzc1IC00LjczNDM3NSBDIDIuMDE1NjI1IC0zLjY3MTg3NSAyLjYyNSAtMy40Mzc1IDMuMjgxMjUgLTMuNDM3NSBDIDQuMzEyNSAtMy40Mzc1IDUuMzI4MTI1IC0zLjkzNzUgNi4wMTU2MjUgLTQuNzk2ODc1IEMgNS44OTA2MjUgLTIuNDg0Mzc1IDQuODQzNzUgLTAuNzk2ODc1IDMuMzI4MTI1IC0wLjc5Njg3NSBDIDIuNzAzMTI1IC0wLjc5Njg3NSAyLjIwMzEyNSAtMC45ODQzNzUgMS43MDMxMjUgLTEuNDUzMTI1IEwgMS4xNzE4NzUgLTAuNTMxMjUgQyAxLjY1NjI1IC0wLjEyNSAyLjI2NTYyNSAwLjI4MTI1IDMuMzI4MTI1IDAuMjgxMjUgQyA1LjQwNjI1IDAuMjgxMjUgNy40MDYyNSAtMi4wMzEyNSA3LjQwNjI1IC01Ljc2NTYyNSBaIE0gNS45Njg3NSAtNy4wNzgxMjUgQyA1Ljk2ODc1IC01LjYyNSA1LjE0MDYyNSAtNC41IDMuOTM3NSAtNC41IEMgMy4xNTYyNSAtNC41IDIuNzM0Mzc1IC00LjkwNjI1IDIuNDIxODc1IC01LjQzNzUgQyAyLjA0Njg3NSAtNi4xMDkzNzUgMi4wMzEyNSAtNi43NjU2MjUgMi4wMzEyNSAtNy40NTMxMjUgQyAyLjAzMTI1IC04LjEyNSAyLjAzMTI1IC04Ljg3NSAyLjUxNTYyNSAtOS42MDkzNzUgQyAyLjg3NSAtMTAuMTQwNjI1IDMuMzI4MTI1IC0xMC41MTU2MjUgNC4wOTM3NSAtMTAuNTE1NjI1IEMgNS42ODc1IC0xMC41MTU2MjUgNS45Mzc1IC04LjIwMzEyNSA1Ljk1MzEyNSAtNy40ODQzNzUgQyA1Ljk2ODc1IC03LjM3NSA1Ljk2ODc1IC03LjE0MDYyNSA1Ljk2ODc1IC03LjA3ODEyNSBaIE0gNS45Njg3NSAtNy4wNzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTYiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDIxODc1IC01LjYyNSBDIDcuNDIxODc1IC02LjYwOTM3NSA3LjQwNjI1IC04LjQzNzUgNi43MDMxMjUgLTkuODQzNzUgQyA1Ljk4NDM3NSAtMTEuMjAzMTI1IDQuODU5Mzc1IC0xMS41NzgxMjUgNC4wNDY4NzUgLTExLjU3ODEyNSBDIDIuODc1IC0xMS41NzgxMjUgMS44NzUgLTEwLjg3NSAxLjM1OTM3NSAtOS43ODEyNSBDIDAuODEyNSAtOC42MjUgMC42NTYyNSAtNy40Mzc1IDAuNjU2MjUgLTUuNjI1IEMgMC42NTYyNSAtNC4zOTA2MjUgMC43MDMxMjUgLTIuODc1IDEuMzI4MTI1IC0xLjU0Njg3NSBDIDIuMDMxMjUgLTAuMDkzNzUgMy4yMTg3NSAwLjI4MTI1IDQuMDMxMjUgMC4yODEyNSBDIDUuMDkzNzUgMC4yODEyNSA2LjEyNSAtMC4yOTY4NzUgNi43MTg3NSAtMS40ODQzNzUgQyA3LjMxMjUgLTIuNzE4NzUgNy40MjE4NzUgLTQuMDc4MTI1IDcuNDIxODc1IC01LjYyNSBaIE0gNi4xMDkzNzUgLTUuODEyNSBDIDYuMTA5Mzc1IC00LjIxODc1IDYuMTA5Mzc1IC0wLjc4MTI1IDQuMDMxMjUgLTAuNzgxMjUgQyAyLjcxODc1IC0wLjc4MTI1IDIuMzI4MTI1IC0yLjI2NTYyNSAyLjIwMzEyNSAtMi43NjU2MjUgQyAyIC0zLjY0MDYyNSAxLjk2ODc1IC00LjQ1MzEyNSAxLjk2ODc1IC01LjgxMjUgQyAxLjk2ODc1IC02Ljg5MDYyNSAxLjk2ODc1IC04LjA5Mzc1IDIuMjk2ODc1IC05LjA0Njg3NSBDIDIuNjg3NSAtMTAuMTQwNjI1IDMuMzc1IC0xMC41MTU2MjUgNC4wMzEyNSAtMTAuNTE1NjI1IEMgNS4yOTY4NzUgLTEwLjUxNTYyNSA1LjcxODc1IC05LjI1IDUuODU5Mzc1IC04Ljc5Njg3NSBDIDYuMTA5Mzc1IC03Ljg5MDYyNSA2LjEwOTM3NSAtNi44MTI1IDYuMTA5Mzc1IC01LjgxMjUgWiBNIDYuMTA5Mzc1IC01LjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTciPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNjI1IC0yLjkzNzUgTCA3LjYyNSAtNCBMIDYuMDYyNSAtNCBMIDYuMDYyNSAtMTEuMjk2ODc1IEwgNC41NDY4NzUgLTExLjI5Njg3NSBMIDAuNDUzMTI1IC00IEwgMC40NTMxMjUgLTIuOTM3NSBMIDQuNzAzMTI1IC0yLjkzNzUgTCA0LjcwMzEyNSAwIEwgNi4wNjI1IDAgTCA2LjA2MjUgLTIuOTM3NSBaIE0gNC43NSAtNCBMIDEuNzgxMjUgLTQgQyAyLjc2NTYyNSAtNS43NSA0LjczNDM3NSAtOS4yOTY4NzUgNC43NSAtMTAuNSBaIE0gNC43NSAtNCAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDAtOCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNy4yNjU2MjUgLTMuNSBDIDcuMjY1NjI1IC01LjYwOTM3NSA1Ljg3NSAtNy4yNSA0LjIwMzEyNSAtNy4yNSBDIDMuNTkzNzUgLTcuMjUgMy4wMTU2MjUgLTcuMDQ2ODc1IDIuNTE1NjI1IC02LjYyNSBMIDIuNTE1NjI1IC0xMC4xODc1IEwgNi43MzQzNzUgLTEwLjE4NzUgTCA2LjczNDM3NSAtMTEuMjk2ODc1IEwgMS4yNSAtMTEuMjk2ODc1IEwgMS4yNSAtNC45Mzc1IEwgMi40MDYyNSAtNC45Mzc1IEMgMi43MTg3NSAtNS42NzE4NzUgMy4zNTkzNzUgLTYuMjAzMTI1IDQuMTg3NSAtNi4yMDMxMjUgQyA0Ljk1MzEyNSAtNi4yMDMxMjUgNS44MTI1IC01LjUxNTYyNSA1LjgxMjUgLTMuNTMxMjUgQyA1LjgxMjUgLTEuNDA2MjUgNC41OTM3NSAtMC43OTY4NzUgMy43MDMxMjUgLTAuNzk2ODc1IEMgMi41OTM3NSAtMC43OTY4NzUgMS41NzgxMjUgLTEuNDY4NzUgMS4xNDA2MjUgLTIuMzkwNjI1IEwgMC41NzgxMjUgLTEuNDIxODc1IEMgMS4zNzUgLTAuMjAzMTI1IDIuNjcxODc1IDAuMjgxMjUgMy43MDMxMjUgMC4yODEyNSBDIDUuNzAzMTI1IDAuMjgxMjUgNy4yNjU2MjUgLTEuNDIxODc1IDcuMjY1NjI1IC0zLjUgWiBNIDcuMjY1NjI1IC0zLjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgwLTkiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDcuNDA2MjUgLTMuMTcxODc1IEMgNy40MDYyNSAtNC4zMTI1IDYuNzM0Mzc1IC01LjUxNTYyNSA1LjIwMzEyNSAtNi4xMDkzNzUgQyA2LjUxNTYyNSAtNi41NDY4NzUgNy4xODc1IC03LjU3ODEyNSA3LjE4NzUgLTguNTkzNzUgQyA3LjE4NzUgLTEwLjE4NzUgNS43OTY4NzUgLTExLjU3ODEyNSA0LjA0Njg3NSAtMTEuNTc4MTI1IEMgMi4yMTg3NSAtMTEuNTc4MTI1IDAuODkwNjI1IC0xMC4xNDA2MjUgMC44OTA2MjUgLTguNTkzNzUgQyAwLjg5MDYyNSAtNy41OTM3NSAxLjU0Njg3NSAtNi41NjI1IDIuODc1IC02LjEwOTM3NSBDIDEuMTg3NSAtNS40NTMxMjUgMC42NzE4NzUgLTQuMTU2MjUgMC42NzE4NzUgLTMuMTcxODc1IEMgMC42NzE4NzUgLTEuMjgxMjUgMi4yMDMxMjUgMC4yODEyNSA0LjAzMTI1IDAuMjgxMjUgQyA1LjkyMTg3NSAwLjI4MTI1IDcuNDA2MjUgLTEuMzEyNSA3LjQwNjI1IC0zLjE3MTg3NSBaIE0gNS45NTMxMjUgLTguNTc4MTI1IEMgNS45NTMxMjUgLTcuMzI4MTI1IDUuMTI1IC02LjYyNSA0LjA0Njg3NSAtNi42MjUgQyAyLjg5MDYyNSAtNi42MjUgMi4xMjUgLTcuNDA2MjUgMi4xMjUgLTguNTc4MTI1IEMgMi4xMjUgLTkuNzY1NjI1IDIuODkwNjI1IC0xMC41MTU2MjUgNC4wNDY4NzUgLTEwLjUxNTYyNSBDIDUuMTA5Mzc1IC0xMC41MTU2MjUgNS45NTMxMjUgLTkuODI4MTI1IDUuOTUzMTI1IC04LjU3ODEyNSBaIE0gNi4wNjI1IC0zLjE4NzUgQyA2LjA2MjUgLTEuMzkwNjI1IDQuOTIxODc1IC0wLjc5Njg3NSA0LjA0Njg3NSAtMC43OTY4NzUgQyAzLjA2MjUgLTAuNzk2ODc1IDIuMDE1NjI1IC0xLjQ2ODc1IDIuMDE1NjI1IC0zLjE4NzUgQyAyLjAxNTYyNSAtNC45NTMxMjUgMy4xODc1IC01LjU3ODEyNSA0LjAzMTI1IC01LjU3ODEyNSBDIDQuOTUzMTI1IC01LjU3ODEyNSA2LjA2MjUgLTQuOTIxODc1IDYuMDYyNSAtMy4xODc1IFogTSA2LjA2MjUgLTMuMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9IiIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0xIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA1Ljk2ODc1IDAgTCA1Ljk2ODc1IC0wLjgyODEyNSBMIDQuMjE4NzUgLTAuODI4MTI1IEwgNC4yMTg3NSAtOS43MDMxMjUgTCAzLjkzNzUgLTkuNzAzMTI1IEMgMy43MTg3NSAtOS40Njg3NSAzLjAzMTI1IC04Ljc5Njg3NSAxLjQ4NDM3NSAtOC43NjU2MjUgQyAxLjI4MTI1IC04Ljc2NTYyNSAxLjI2NTYyNSAtOC43NSAxLjI2NTYyNSAtOC40ODQzNzUgTCAxLjI2NTYyNSAtNy45MjE4NzUgQyAyLjE0MDYyNSAtNy45MjE4NzUgMi43OTY4NzUgLTguMTQwNjI1IDMuMDkzNzUgLTguMjY1NjI1IEwgMy4wOTM3NSAtMC44MjgxMjUgTCAxLjM0Mzc1IC0wLjgyODEyNSBMIDEuMzQzNzUgMCBaIE0gNS45Njg3NSAwICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMS0yIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA2LjQyMTg3NSAtNC42NzE4NzUgQyA2LjQyMTg3NSAtNS42NDA2MjUgNi4zOTA2MjUgLTYuNzM0Mzc1IDYuMDE1NjI1IC03Ljc2NTYyNSBDIDUuMzkwNjI1IC05LjM1OTM3NSA0LjI4MTI1IC05LjcwMzEyNSAzLjUxNTYyNSAtOS43MDMxMjUgQyAyLjU3ODEyNSAtOS43MDMxMjUgMS42NzE4NzUgLTkuMjE4NzUgMS4xNDA2MjUgLTguMDkzNzUgQyAwLjY3MTg3NSAtNy4wNzgxMjUgMC41OTM3NSAtNS45MDYyNSAwLjU5Mzc1IC00LjY3MTg3NSBDIDAuNTkzNzUgLTMuMTA5Mzc1IDAuNzE4NzUgLTIuMjE4NzUgMS4xNzE4NzUgLTEuMjE4NzUgQyAxLjYwOTM3NSAtMC4yNjU2MjUgMi41MzEyNSAwLjI5Njg3NSAzLjUgMC4yOTY4NzUgQyA0LjQ1MzEyNSAwLjI5Njg3NSA1LjM0Mzc1IC0wLjIxODc1IDUuODQzNzUgLTEuMjAzMTI1IEMgNi4zMjgxMjUgLTIuMjE4NzUgNi40MjE4NzUgLTMuMjY1NjI1IDYuNDIxODc1IC00LjY3MTg3NSBaIE0gNS4zMjgxMjUgLTQuODQzNzUgQyA1LjMyODEyNSAtMy45Mzc1IDUuMzI4MTI1IC0yLjk4NDM3NSA1LjA3ODEyNSAtMi4wOTM3NSBDIDQuNjg3NSAtMC43MTg3NSAzLjg5MDYyNSAtMC41NjI1IDMuNTE1NjI1IC0wLjU2MjUgQyAxLjY3MTg3NSAtMC41NjI1IDEuNjcxODc1IC0zLjUgMS42NzE4NzUgLTQuODQzNzUgQyAxLjY3MTg3NSAtNS43ODEyNSAxLjY3MTg3NSAtNi42NTYyNSAxLjkzNzUgLTcuNDY4NzUgQyAyLjI4MTI1IC04LjQ4NDM3NSAyLjkwNjI1IC04LjgyODEyNSAzLjUgLTguODI4MTI1IEMgNS4zMjgxMjUgLTguODI4MTI1IDUuMzI4MTI1IC02LjE3MTg3NSA1LjMyODEyNSAtNC44NDM3NSBaIE0gNS4zMjgxMjUgLTQuODQzNzUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTMiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDMuNzUgMy41NzgxMjUgTCAzLjc1IDIuNzE4NzUgTCAyLjQzNzUgMi43MTg3NSBMIDIuNDM3NSAtOS44OTA2MjUgTCAzLjc1IC05Ljg5MDYyNSBMIDMuNzUgLTEwLjc1IEwgMS40MjE4NzUgLTEwLjc1IEwgMS40MjE4NzUgMy41NzgxMjUgWiBNIDMuNzUgMy41NzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTQiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDIuNTMxMjUgLTAuMDE1NjI1IEwgMi41MzEyNSAtMS4xNTYyNSBMIDEuMzU5Mzc1IC0xLjE1NjI1IEwgMS4zNTkzNzUgMCBMIDEuNzE4NzUgMCBMIDEuMzU5Mzc1IDEuNzk2ODc1IEwgMS45Mzc1IDEuNzk2ODc1IFogTSAyLjUzMTI1IC0wLjAxNTYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtNSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMi41MzEyNSAwIEwgMi41MzEyNSAtMS4xNTYyNSBMIDEuMzc1IC0xLjE1NjI1IEwgMS4zNzUgMCBaIE0gNC45ODQzNzUgMCBMIDQuOTg0Mzc1IC0xLjE1NjI1IEwgMy44MTI1IC0xLjE1NjI1IEwgMy44MTI1IDAgWiBNIDcuNDIxODc1IDAgTCA3LjQyMTg3NSAtMS4xNTYyNSBMIDYuMjUgLTEuMTU2MjUgTCA2LjI1IDAgWiBNIDcuNDIxODc1IDAgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTYiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDIuNjI1IDMuNTc4MTI1IEwgMi42MjUgLTEwLjc1IEwgMC4yOTY4NzUgLTEwLjc1IEwgMC4yOTY4NzUgLTkuODkwNjI1IEwgMS42MDkzNzUgLTkuODkwNjI1IEwgMS42MDkzNzUgMi43MTg3NSBMIDAuMjk2ODc1IDIuNzE4NzUgTCAwLjI5Njg3NSAzLjU3ODEyNSBaIE0gMi42MjUgMy41NzgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTciPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDYuNDA2MjUgLTQuODEyNSBDIDYuNDA2MjUgLTguNzAzMTI1IDQuODEyNSAtOS43MDMxMjUgMy41NjI1IC05LjcwMzEyNSBDIDIuNTMxMjUgLTkuNzAzMTI1IDEuOTIxODc1IC05LjIxODc1IDEuNDIxODc1IC04LjYyNSBDIDAuNzM0Mzc1IC03Ljc5Njg3NSAwLjYwOTM3NSAtNy4wNDY4NzUgMC42MDkzNzUgLTYuMjE4NzUgQyAwLjYwOTM3NSAtNC4zNzUgMS41NDY4NzUgLTIuODEyNSAyLjg1OTM3NSAtMi44MTI1IEMgMy45MDYyNSAtMi44MTI1IDQuNzAzMTI1IC0zLjMxMjUgNS4yNSAtMy45ODQzNzUgQyA1LjE0MDYyNSAtMS45ODQzNzUgNC4yMDMxMjUgLTAuNTYyNSAyLjg5MDYyNSAtMC41NjI1IEMgMi4yOTY4NzUgLTAuNTYyNSAxLjg0Mzc1IC0wLjc1IDEuNDY4NzUgLTEuMTI1IEwgMS4wMTU2MjUgLTAuMzU5Mzc1IEMgMS42NTYyNSAwLjE0MDYyNSAyLjI1IDAuMjk2ODc1IDIuODkwNjI1IDAuMjk2ODc1IEMgNC43MDMxMjUgMC4yOTY4NzUgNi40MDYyNSAtMS42NTYyNSA2LjQwNjI1IC00LjgxMjUgWiBNIDUuMjE4NzUgLTUuODkwNjI1IEMgNS4yMTg3NSAtNC44MTI1IDQuNjA5Mzc1IC0zLjY3MTg3NSAzLjQwNjI1IC0zLjY3MTg3NSBDIDMuMTcxODc1IC0zLjY3MTg3NSAyLjUzMTI1IC0zLjY3MTg3NSAyLjA2MjUgLTQuNTE1NjI1IEMgMS43OTY4NzUgLTUuMDMxMjUgMS43MzQzNzUgLTUuNDUzMTI1IDEuNzM0Mzc1IC02LjIxODc1IEMgMS43MzQzNzUgLTYuODU5Mzc1IDEuNzUgLTcuNDUzMTI1IDIuMTg3NSAtOC4xMDkzNzUgQyAyLjM5MDYyNSAtOC40MjE4NzUgMi43ODEyNSAtOC44NzUgMy41NjI1IC04Ljg3NSBDIDQuOTM3NSAtOC44NzUgNS4xNzE4NzUgLTYuOTM3NSA1LjIwMzEyNSAtNi4yMzQzNzUgQyA1LjIxODc1IC02LjE0MDYyNSA1LjIxODc1IC02IDUuMjE4NzUgLTUuODkwNjI1IFogTSA1LjIxODc1IC01Ljg5MDYyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtOCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNi40MjE4NzUgLTIuNTc4MTI1IEMgNi40MjE4NzUgLTMuNzM0Mzc1IDUuNjQwNjI1IC00LjY4NzUgNC40Njg3NSAtNS4wNzgxMjUgQyA1LjM3NSAtNS4zNDM3NSA2LjIzNDM3NSAtNi4xNDA2MjUgNi4yMzQzNzUgLTcuMjAzMTI1IEMgNi4yMzQzNzUgLTguNTQ2ODc1IDUuMDMxMjUgLTkuNzAzMTI1IDMuNTE1NjI1IC05LjcwMzEyNSBDIDEuOTM3NSAtOS43MDMxMjUgMC43ODEyNSAtOC41IDAuNzgxMjUgLTcuMjAzMTI1IEMgMC43ODEyNSAtNi4xMjUgMS42NTYyNSAtNS4zMjgxMjUgMi41MzEyNSAtNS4wNzgxMjUgQyAxLjM3NSAtNC42ODc1IDAuNTkzNzUgLTMuNzM0Mzc1IDAuNTkzNzUgLTIuNTc4MTI1IEMgMC41OTM3NSAtMS4wNDY4NzUgMS44NTkzNzUgMC4yOTY4NzUgMy41IDAuMjk2ODc1IEMgNS4xODc1IDAuMjk2ODc1IDYuNDIxODc1IC0xLjA3ODEyNSA2LjQyMTg3NSAtMi41NzgxMjUgWiBNIDUuMjUgLTcuMTg3NSBDIDUuMjUgLTYuMjE4NzUgNC41OTM3NSAtNS41MTU2MjUgMy41MTU2MjUgLTUuNTE1NjI1IEMgMi4zNzUgLTUuNTE1NjI1IDEuNzY1NjI1IC02LjI2NTYyNSAxLjc2NTYyNSAtNy4xODc1IEMgMS43NjU2MjUgLTguMjgxMjUgMi41MzEyNSAtOC44NzUgMy41IC04Ljg3NSBDIDQuNTMxMjUgLTguODc1IDUuMjUgLTguMjM0Mzc1IDUuMjUgLTcuMTg3NSBaIE0gNS4yOTY4NzUgLTIuNTkzNzUgQyA1LjI5Njg3NSAtMS4yMDMxMjUgNC40MjE4NzUgLTAuNTYyNSAzLjUxNTYyNSAtMC41NjI1IEMgMi41NDY4NzUgLTAuNTYyNSAxLjcxODc1IC0xLjI1IDEuNzE4NzUgLTIuNTkzNzUgQyAxLjcxODc1IC00LjEyNSAyLjc1IC00LjY0MDYyNSAzLjUgLTQuNjQwNjI1IEMgNC4yOTY4NzUgLTQuNjQwNjI1IDUuMjk2ODc1IC00LjA5Mzc1IDUuMjk2ODc1IC0yLjU5Mzc1IFogTSA1LjI5Njg3NSAtMi41OTM3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtOSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gMi41MzEyNSAtOC44MTI1IEwgMi41MzEyNSAtOS45NTMxMjUgTCAxLjM1OTM3NSAtOS45NTMxMjUgTCAxLjM1OTM3NSAtOC43OTY4NzUgTCAxLjcxODc1IC04Ljc5Njg3NSBMIDEuMzU5Mzc1IC03IEwgMS45Mzc1IC03IFogTSAyLjUzMTI1IC04LjgxMjUgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgxLTEwIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSA2LjY4NzUgLTMuMjAzMTI1IEMgNi42ODc1IC00Ljk2ODc1IDUuNzM0Mzc1IC02LjUxNTYyNSA0LjQwNjI1IC02LjUxNTYyNSBDIDMuOTg0Mzc1IC02LjUxNTYyNSAzLjA2MjUgLTYuNDIxODc1IDIuMTg3NSAtNS43MDMxMjUgTCAyLjE4NzUgLTkuOTUzMTI1IEwgMS4xMjUgLTkuOTUzMTI1IEwgMS4xMjUgMCBMIDIuMjAzMTI1IDAgTCAyLjIwMzEyNSAtMC42NDA2MjUgQyAyLjg3NSAtMC4wMTU2MjUgMy41NzgxMjUgMC4xNDA2MjUgNC4wNzgxMjUgMC4xNDA2MjUgQyA1LjQzNzUgMC4xNDA2MjUgNi42ODc1IC0xLjI1IDYuNjg3NSAtMy4yMDMxMjUgWiBNIDUuNTkzNzUgLTMuMjAzMTI1IEMgNS41OTM3NSAtMS4zMjgxMjUgNC40MjE4NzUgLTAuNzE4NzUgMy41NDY4NzUgLTAuNzE4NzUgQyAzLjE0MDYyNSAtMC43MTg3NSAyLjg3NSAtMC44NTkzNzUgMi42MDkzNzUgLTEuMDYyNSBDIDIuMjY1NjI1IC0xLjM1OTM3NSAyLjIwMzEyNSAtMS42MjUgMi4yMDMxMjUgLTEuODU5Mzc1IEwgMi4yMDMxMjUgLTQuODI4MTI1IEMgMi40Njg3NSAtNS4yMzQzNzUgMi45ODQzNzUgLTUuNjU2MjUgMy42ODc1IC01LjY1NjI1IEMgNC41NjI1IC01LjY1NjI1IDUuNTkzNzUgLTQuOTg0Mzc1IDUuNTkzNzUgLTMuMjAzMTI1IFogTSA1LjU5Mzc1IC0zLjIwMzEyNSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDEtMTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDUuODQzNzUgLTMuMjM0Mzc1IEMgNS44NDM3NSAtMy44NDM3NSA1Ljc4MTI1IC00LjcxODc1IDUuMzI4MTI1IC01LjQ4NDM3NSBDIDQuNzM0Mzc1IC02LjQ2ODc1IDMuNzM0Mzc1IC02LjU3ODEyNSAzLjMxMjUgLTYuNTc4MTI1IEMgMS43NjU2MjUgLTYuNTc4MTI1IDAuNDY4NzUgLTUuMDkzNzUgMC40Njg3NSAtMy4yMzQzNzUgQyAwLjQ2ODc1IC0xLjMyODEyNSAxLjg0Mzc1IDAuMTQwNjI1IDMuNTE1NjI1IDAuMTQwNjI1IEMgNC4xNzE4NzUgMC4xNDA2MjUgNC45Njg3NSAtMC4wNDY4NzUgNS43NSAtMC42MDkzNzUgQyA1Ljc1IC0wLjY3MTg3NSA1LjcwMzEyNSAtMS4xNDA2MjUgNS43MDMxMjUgLTEuMTQwNjI1IEMgNS43MDMxMjUgLTEuMTQwNjI1IDUuNjcxODc1IC0xLjQ4NDM3NSA1LjY3MTg3NSAtMS41MzEyNSBDIDQuODEyNSAtMC44MTI1IDMuOTY4NzUgLTAuNzE4NzUgMy41NDY4NzUgLTAuNzE4NzUgQyAyLjQzNzUgLTAuNzE4NzUgMS40ODQzNzUgLTEuNzAzMTI1IDEuNDY4NzUgLTMuMjM0Mzc1IFogTSA0Ljk4NDM3NSAtNCBMIDEuNTQ2ODc1IC00IEMgMS43OTY4NzUgLTQuOTY4NzUgMi40Njg3NSAtNS43MTg3NSAzLjMxMjUgLTUuNzE4NzUgQyAzLjc2NTYyNSAtNS43MTg3NSA0Ljc1IC01LjUxNTYyNSA0Ljk4NDM3NSAtNCBaIE0gNC45ODQzNzUgLTQgIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGgyLTAiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSIiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDItMSI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9Ik0gNC43NjU2MjUgLTYuMTg3NSBDIDQuNzY1NjI1IC02LjkwNjI1IDQuMTU2MjUgLTcuNTE1NjI1IDMuNDM3NSAtNy41MTU2MjUgQyAyLjcxODc1IC03LjUxNTYyNSAyLjEyNSAtNi45MDYyNSAyLjEyNSAtNi4xODc1IEMgMi4xMjUgLTUuNDg0Mzc1IDIuNzE4NzUgLTQuODc1IDMuNDM3NSAtNC44NzUgQyA0LjE1NjI1IC00Ljg3NSA0Ljc2NTYyNSAtNS40ODQzNzUgNC43NjU2MjUgLTYuMTg3NSBaIE0gNC43NjU2MjUgLTYuMTg3NSAiLz4KPC9zeW1ib2w+CjxzeW1ib2wgb3ZlcmZsb3c9InZpc2libGUiIGlkPSJnbHlwaDMtMCI+CjxwYXRoIHN0eWxlPSJzdHJva2U6bm9uZTsiIGQ9IiIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoMy0xIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iTSAyLjY0MDYyNSAtMC42ODc1IEMgMi42NDA2MjUgLTEuMTA5Mzc1IDIuMjk2ODc1IC0xLjM5MDYyNSAxLjk1MzEyNSAtMS4zOTA2MjUgQyAxLjUzMTI1IC0xLjM5MDYyNSAxLjI1IC0xLjA0Njg3NSAxLjI1IC0wLjcwMzEyNSBDIDEuMjUgLTAuMjgxMjUgMS41OTM3NSAwIDEuOTM3NSAwIEMgMi4zNTkzNzUgMCAyLjY0MDYyNSAtMC4zNDM3NSAyLjY0MDYyNSAtMC42ODc1IFogTSAyLjY0MDYyNSAtMC42ODc1ICIvPgo8L3N5bWJvbD4KPHN5bWJvbCBvdmVyZmxvdz0idmlzaWJsZSIgaWQ9ImdseXBoNC0wIj4KPHBhdGggc3R5bGU9InN0cm9rZTpub25lOyIgZD0iIi8+Cjwvc3ltYm9sPgo8c3ltYm9sIG92ZXJmbG93PSJ2aXNpYmxlIiBpZD0iZ2x5cGg0LTEiPgo8cGF0aCBzdHlsZT0ic3Ryb2tlOm5vbmU7IiBkPSJNIDEwLjQwNjI1IC00LjY4NzUgQyAxMS4wMTU2MjUgLTQuMTcxODc1IDExLjc1IC0zLjc5Njg3NSAxMi4yMTg3NSAtMy41NzgxMjUgQyAxMS43MDMxMjUgLTMuMzU5Mzc1IDExIC0yLjk4NDM3NSAxMC40MDYyNSAtMi40ODQzNzUgTCAxLjMxMjUgLTIuNDg0Mzc1IEMgMS4wNjI1IC0yLjQ4NDM3NSAwLjc4MTI1IC0yLjQ4NDM3NSAwLjc4MTI1IC0yLjE4NzUgQyAwLjc4MTI1IC0xLjkwNjI1IDEuMDQ2ODc1IC0xLjkwNjI1IDEuMjk2ODc1IC0xLjkwNjI1IEwgOS43NjU2MjUgLTEuOTA2MjUgQyA5LjA3ODEyNSAtMS4yNSA4LjMyODEyNSAwLjAxNTYyNSA4LjMyODEyNSAwLjIwMzEyNSBDIDguMzI4MTI1IDAuMzU5Mzc1IDguNTE1NjI1IDAuMzU5Mzc1IDguNjA5Mzc1IDAuMzU5Mzc1IEMgOC43MTg3NSAwLjM1OTM3NSA4LjgyODEyNSAwLjM1OTM3NSA4Ljg3NSAwLjI1IEMgOS4xODc1IC0wLjI5Njg3NSA5LjU3ODEyNSAtMS4wNjI1IDEwLjUxNTYyNSAtMS44OTA2MjUgQyAxMS41IC0yLjc2NTYyNSAxMi40Njg3NSAtMy4xNTYyNSAxMy4yMDMxMjUgLTMuMzc1IEMgMTMuNDUzMTI1IC0zLjQ1MzEyNSAxMy40Njg3NSAtMy40Njg3NSAxMy41IC0zLjUgQyAxMy41MzEyNSAtMy41MTU2MjUgMTMuNTMxMjUgLTMuNTYyNSAxMy41MzEyNSAtMy41NzgxMjUgQyAxMy41MzEyNSAtMy42MDkzNzUgMTMuNTMxMjUgLTMuNjQwNjI1IDEzLjUxNTYyNSAtMy42NzE4NzUgTCAxMy40Njg3NSAtMy43MDMxMjUgQyAxMy40Mzc1IC0zLjcxODc1IDEzLjQyMTg3NSAtMy43MzQzNzUgMTMuMTU2MjUgLTMuODEyNSBDIDExLjIxODc1IC00LjM5MDYyNSA5Ljc4MTI1IC01LjY4NzUgOC45ODQzNzUgLTcuMjM0Mzc1IEMgOC44MjgxMjUgLTcuNTE1NjI1IDguODEyNSAtNy41MzEyNSA4LjYwOTM3NSAtNy41MzEyNSBDIDguNTE1NjI1IC03LjUzMTI1IDguMzI4MTI1IC03LjUzMTI1IDguMzI4MTI1IC03LjM3NSBDIDguMzI4MTI1IC03LjE4NzUgOS4wNjI1IC01LjkzNzUgOS43NjU2MjUgLTUuMjY1NjI1IEwgMS4yOTY4NzUgLTUuMjY1NjI1IEMgMS4wNDY4NzUgLTUuMjY1NjI1IDAuNzgxMjUgLTUuMjY1NjI1IDAuNzgxMjUgLTQuOTg0Mzc1IEMgMC43ODEyNSAtNC42ODc1IDEuMDYyNSAtNC42ODc1IDEuMzEyNSAtNC42ODc1IFogTSAxMC40MDYyNSAtNC42ODc1ICIvPgo8L3N5bWJvbD4KPC9nPgo8aW1hZ2UgaWQ9ImltYWdlNSIgd2lkdGg9IjM2IiBoZWlnaHQ9IjM2IiB4bGluazpocmVmPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNRQUFBQWtDQUlBQUFCdVlnL1BBQUFBQm1KTFIwUUEvd0QvQVArZ3ZhZVRBQUFDWWtsRVFWUklpZDJYUzNMVFFCUkZXMnA5YkJuTEpuTGtjZ0trUXFVY2tzQW9JMFlVVld3Q2xzRmVXQUFEaWhsTFlBWVR4bnhjT0lTeWsrQTRjZnpUMTVJc0J2ZG1DeG0wSno2bGZxMldici83WGtzYkQ5NEpJWVFRTlNzRlZLbytRS3ZVQVZsNkE4aFhHc0MwU3NCb09PQlErQS9ROW1lQzgvay9YVHdDNk9JT2YzZTZtT0hWTTFDaE53RkJlaCt3bUhHbzVuTEl0UjNHeEhQQWgwOC9HVHkrQUx4NS9RQ3cwd29CWHNraGhXWFV0QUlVSjF6NDE4a1EwT3VmQTdhMlc0QVh4N3VBV1J3QjNuLzhETWdqRzdELzFBWHN2ZklBWnNaZ2hXVk1FbnBabWhMUTNxb0JMUHNod0cvU2xkcWEwNlRHUkExRFdqZ043Z0VXODVqQmtqY1VCWU1WbHRIUURWQzY1dXQzT2hYQWpzOGlXUVFza21WSlFReWR0Zkg1OFRQQW9EOEZISFk3bkpYUitFTG5UcWtybzNiU2V3dmE5THNBTzZOV2xzVkttRm5VMHlob3p5UmdFbDZlbndLaWNBeG9OMDNBaHBrQXlnV3JoTG95R3ZIa0duUTZwUWNQOTdZQmNVUmw4bUFDV0xzQndIWXRRTXVxTW1iSmpOVlhWNEF3WUgrWE1lK3NzSXgyUWNkOS8zTUd5SEtlVko1MDJTeHNnL2JVbDh5MHJGanlTczVTVUJVRW8yRFBFaWtycVV5Vk43WFJhWEs5MFNYejZ1dVhQdUJxMmdhME42bk12c1BnMG1CYUNzbFRUYnhjQWFJUlJWdlBlY1UxQ1FyTDZDUnNEUWN0WmxvY05RQi9mOUNldzV5dTdHL1F5M2FWeXRnVjlocVpzcUxLVy9VOG03T2t6dzFTV0VZeDVUdDZGaHZCeXdONnVWZmpvOXdNQ2I5bjlQdjhtdDNjS2pqa1ZhamVib3RTM3g0MmhkTlFYOGJVT1FMSjVCc2dtdlFBanh2OGVEbHFVcEh1aWwxRGxGU21UT2gzUjlEZDlScjFGQmEzSXl4NUJGSlh4dit0T3RZaHk0eWpIQUFBQUFCSlJVNUVya0pnZ2c9PSIvPgo8L2RlZnM+CjxnIGlkPSJzdXJmYWNlMSI+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoODguNjI3NjI1JSw4My41Mjk2NjMlLDUwLjU4NTkzOCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyMTIuNTc0MjE5IDcwLjg2NzE4OCBMIDI0MC45MTc5NjkgNzAuODY3MTg4IEwgMjQwLjkxNzk2OSA0Mi41MjM0MzggTCAyMTIuNTc0MjE5IDQyLjUyMzQzOCBaIE0gMjEyLjU3NDIxOSA3MC44NjcxODggIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoODguNjI3NjI1JSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDIxMi41NzQyMTkgOTkuNjEzMjgxIEwgMjIyLjAxOTUzMSA5OS42MTMyODEgTCAyMjIuMDE5NTMxIDcxLjI2NTYyNSBMIDIxMi41NzQyMTkgNzEuMjY1NjI1IFogTSAyMTIuNTc0MjE5IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4My41Mjk2NjMlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjIyLjAyMzQzOCA5OS42MTMyODEgTCAyMzEuNDY4NzUgOTkuNjEzMjgxIEwgMjMxLjQ2ODc1IDcxLjI2NTYyNSBMIDIyMi4wMjM0MzggNzEuMjY1NjI1IFogTSAyMjIuMDIzNDM4IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw1MC41ODU5MzglKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjMxLjQ2ODc1IDk5LjYxMzI4MSBMIDI0MC45MTc5NjkgOTkuNjEzMjgxIEwgMjQwLjkxNzk2OSA3MS4yNjU2MjUgTCAyMzEuNDY4NzUgNzEuMjY1NjI1IFogTSAyMzEuNDY4NzUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg4LjYyNzYyNSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxMS4xMDkzNzUgMjAxLjQ2NDg0NCBMIDQ1LjEyODkwNiAyMDEuNDY0ODQ0IEwgNDUuMTI4OTA2IDE2Ny40NDUzMTIgTCAxMS4xMDkzNzUgMTY3LjQ0NTMxMiBaIE0gMTEuMTA5Mzc1IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMTUuOTgyIiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjI0LjA3MzI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0yIiB4PSIzMi4xNjQ1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDgzLjUyOTY2MyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSA0NS4xMjg5MDYgMjAxLjQ2NDg0NCBMIDc5LjE0NDUzMSAyMDEuNDY0ODQ0IEwgNzkuMTQ0NTMxIDE2Ny40NDUzMTIgTCA0NS4xMjg5MDYgMTY3LjQ0NTMxMiBaIE0gNDUuMTI4OTA2IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iNDkuOTk3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjU4LjA4ODI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC00IiB4PSI2Ni4xNzk1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDAlLDUwLjU4NTkzOCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSA3OS4xNDQ1MzEgMjAxLjQ2NDg0NCBMIDExMy4xNjAxNTYgMjAxLjQ2NDg0NCBMIDExMy4xNjAxNTYgMTY3LjQ0NTMxMiBMIDc5LjE0NDUzMSAxNjcuNDQ1MzEyIFogTSA3OS4xNDQ1MzEgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0zIiB4PSI4NC4wMTMiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iOTIuMTA0MjU3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTUiIHg9IjEwMC4xOTU1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMCIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI3LjAyOTYzOCIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxNC4wNTkyNzYiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjEuMDg4OTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI4LjExODU1MiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzNS4xNDgxOSIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0Mi4xNzc4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDkuMjA3NDY2IiB5PSIyMjMuMTY4Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM0LjAxNiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI0MS4wNDU2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDguMDc1Mjc2IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjU1LjEwNDkxNCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI2Mi4xMzQ1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iNjkuMTY0MTkiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNzYuMTkzODI4IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjgzLjIyMzQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjY4LjAzMSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI3NS4wNjA2MzgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iODIuMDkwMjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijg5LjExOTkxNCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI5Ni4xNDk1NTIiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTAzLjE3OTE5IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjExMC4yMDg4MjgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTE3LjIzODQ2NiIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDI4LjMxODUgLTE1Mi42MDM4NzUgTCAyOC4zMTg1IC0xNDIuMjA1NDM4IEwgMjEuMjQwMzc1IC0xNDIuMjA1NDM4IEwgMjEuMjQwMzc1IC0xNTIuNjAzODc1IFogTSAyOC4zMTg1IC0xNTIuNjAzODc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gNjIuMzM0MTI1IC0xNjkuNjExNjg4IEwgNjIuMzM0MTI1IC0xNTkuMjEzMjUgTCA1NS4yNTYgLTE1OS4yMTMyNSBMIDU1LjI1NiAtMTY5LjYxMTY4OCBaIE0gNjIuMzM0MTI1IC0xNjkuNjExNjg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSA5Ni4zNDk3NSAtMTg2LjYxOTUgTCA5Ni4zNDk3NSAtMTc2LjIyMTA2MyBMIDg5LjI3MTYyNSAtMTc2LjIyMTA2MyBMIDg5LjI3MTYyNSAtMTg2LjYxOTUgWiBNIDk2LjM0OTc1IC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAtMC4wMDE4MTI1IC0xMzAuNTk2MDYzIEwgLTAuMDAxODEyNSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4LjExNzE4OCAyMTMuMjczNDM4IEMgMjguMzc4OTA2IDIxMS44OTA2MjUgMjkuMTU2MjUgMjA5LjY0NDUzMSAzMC4wNjI1IDIwOC4wOTM3NSBMIDI2LjE3NTc4MSAyMDguMDkzNzUgQyAyNy4wODIwMzEgMjA5LjY0NDUzMSAyNy44NTkzNzUgMjExLjg5MDYyNSAyOC4xMTcxODggMjEzLjI3MzQzOCAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDM0LjAxNzcxOSAtMTMwLjU5NjA2MyBMIDM0LjAxNzcxOSAtMTU0LjU0OTE4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDYyLjEzNjcxOSAyMzAuMjgxMjUgQyA2Mi4zOTQ1MzEgMjI4Ljg5ODQzOCA2My4xNzE4NzUgMjI2LjY1NjI1IDY0LjA3ODEyNSAyMjUuMTAxNTYyIEwgNjAuMTkxNDA2IDIyNS4xMDE1NjIgQyA2MS4wOTc2NTYgMjI2LjY1NjI1IDYxLjg3NSAyMjguODk4NDM4IDYyLjEzNjcxOSAyMzAuMjgxMjUgIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDY4LjAzMzM0NCAtMTMwLjU5NjA2MyBMIDY4LjAzMzM0NCAtMTcxLjU1NyAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gOTYuMTUyMzQ0IDI0Ny4yODkwNjIgQyA5Ni40MTAxNTYgMjQ1LjkwNjI1IDk3LjE4NzUgMjQzLjY2NDA2MiA5OC4wOTM3NSAyNDIuMTA5Mzc1IEwgOTQuMjA3MDMxIDI0Mi4xMDkzNzUgQyA5NS4xMTMyODEgMjQzLjY2NDA2MiA5NS44OTA2MjUgMjQ1LjkwNjI1IDk2LjE1MjM0NCAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iNDguMTQ2IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjgyLjE2MiIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjExNi4xNzciIHk9IjI4MS4yNjIiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsNzkuMjE0NDc4JSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjQwLjkxNzk2OSA3MC44NjcxODggTCAyNjkuMjY1NjI1IDcwLjg2NzE4OCBMIDI2OS4yNjU2MjUgNDIuNTIzNDM4IEwgMjQwLjkxNzk2OSA0Mi41MjM0MzggWiBNIDI0MC45MTc5NjkgNzAuODY3MTg4ICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNDAuOTE3OTY5IDk5LjYxMzI4MSBMIDI1MC4zNjcxODggOTkuNjEzMjgxIEwgMjUwLjM2NzE4OCA3MS4yNjU2MjUgTCAyNDAuOTE3OTY5IDcxLjI2NTYyNSBaIE0gMjQwLjkxNzk2OSA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuMjE0NDc4JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI1MC4zNjcxODggOTkuNjEzMjgxIEwgMjU5LjgxNjQwNiA5OS42MTMyODEgTCAyNTkuODE2NDA2IDcxLjI2NTYyNSBMIDI1MC4zNjcxODggNzEuMjY1NjI1IFogTSAyNTAuMzY3MTg4IDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjU5LjgxNjQwNiA5OS42MTMyODEgTCAyNjkuMjY1NjI1IDk5LjYxMzI4MSBMIDI2OS4yNjU2MjUgNzEuMjY1NjI1IEwgMjU5LjgxNjQwNiA3MS4yNjU2MjUgWiBNIDI1OS44MTY0MDYgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDg3LjA1NzQ5NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxMTMuMTYwMTU2IDIwMS40NjQ4NDQgTCAxNDcuMTc1NzgxIDIwMS40NjQ4NDQgTCAxNDcuMTc1NzgxIDE2Ny40NDUzMTIgTCAxMTMuMTYwMTU2IDE2Ny40NDUzMTIgWiBNIDExMy4xNjAxNTYgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIxMTguMDI5IiB5PSIxOTAuMjM5Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjEyNi4xMjAyNTciIHk9IjE5MC4yMzkiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMTM0LjIxMTUxNCIgeT0iMTkwLjIzOSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuMjE0NDc4JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE0Ny4xNzU3ODEgMjAxLjQ2NDg0NCBMIDE4MS4xOTE0MDYgMjAxLjQ2NDg0NCBMIDE4MS4xOTE0MDYgMTY3LjQ0NTMxMiBMIDE0Ny4xNzU3ODEgMTY3LjQ0NTMxMiBaIE0gMTQ3LjE3NTc4MSAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjE1Mi4wNDUiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMTYwLjEzNjI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIxNjguMjI3NTE0IiB5PSIxOTAuMTAxIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSwwJSw0MC43ODM2OTElKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMTgxLjE5MTQwNiAyMDEuNDY0ODQ0IEwgMjE1LjIwNzAzMSAyMDEuNDY0ODQ0IEwgMjE1LjIwNzAzMSAxNjcuNDQ1MzEyIEwgMTgxLjE5MTQwNiAxNjcuNDQ1MzEyIFogTSAxODEuMTkxNDA2IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMyIgeD0iMTg2LjA2IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTYiIHg9IjE5NC4xNTEyNTciIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMjAyLjI0MjUxNCIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMDIuMDQ3IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEwOS4wNzY2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTE2LjEwNjI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMjMuMTM1OTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjEzMC4xNjU1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTM3LjE5NTE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE0NC4yMjQ4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTUxLjI1NDQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxMzYuMDYzIiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE0My4wOTI2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTUwLjEyMjI3NiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxNTcuMTUxOTE0IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE2NC4xODE1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTcxLjIxMTE5IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE3OC4yNDA4MjgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTg1LjI3MDQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE3My41OTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTgwLjYyMzYzOCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxODcuNjUzMjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE5NC42ODI5MTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjAxLjcxMjU1MiIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyMDguNzQyMTkiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjE1Ljc3MTgyOCIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDEzMC4zNjUzNzUgLTE1Mi42MDM4NzUgTCAxMzAuMzY1Mzc1IC0xNDIuMjA1NDM4IEwgMTIzLjI5MTE1NiAtMTQyLjIwNTQzOCBMIDEyMy4yOTExNTYgLTE1Mi42MDM4NzUgWiBNIDEzMC4zNjUzNzUgLTE1Mi42MDM4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxNjQuMzg0OTA2IC0xNjkuNjExNjg4IEwgMTY0LjM4NDkwNiAtMTU5LjIxMzI1IEwgMTU3LjMwNjc4MSAtMTU5LjIxMzI1IEwgMTU3LjMwNjc4MSAtMTY5LjYxMTY4OCBaIE0gMTY0LjM4NDkwNiAtMTY5LjYxMTY4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTk0Ljg4NDkwNiAtMTg2LjYxOTUgTCAxOTQuODg0OTA2IC0xNzYuMjIxMDYzIEwgMTg3LjgwNjc4MSAtMTc2LjIyMTA2MyBMIDE4Ny44MDY3ODEgLTE4Ni42MTk1IFogTSAxOTQuODg0OTA2IC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAxMDIuMDQ4OTY5IC0xMzAuNTk2MDYzIEwgMTAyLjA0ODk2OSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDEzMC4xNjc5NjkgMjEzLjI3MzQzOCBDIDEzMC40MjU3ODEgMjExLjg5MDYyNSAxMzEuMjAzMTI1IDIwOS42NDQ1MzEgMTMyLjEwOTM3NSAyMDguMDkzNzUgTCAxMjguMjI2NTYyIDIwOC4wOTM3NSBDIDEyOS4xMzI4MTIgMjA5LjY0NDUzMSAxMjkuOTEwMTU2IDIxMS44OTA2MjUgMTMwLjE2Nzk2OSAyMTMuMjczNDM4ICIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjc5NzAxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTM2LjA2NDU5NCAtMTMwLjU5NjA2MyBMIDEzNi4wNjQ1OTQgLTE1NC41NDkxODggIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAxNjQuMTgzNTk0IDIzMC4yODEyNSBDIDE2NC40NDE0MDYgMjI4Ljg5ODQzOCAxNjUuMjE4NzUgMjI2LjY1NjI1IDE2Ni4xMjUgMjI1LjEwMTU2MiBMIDE2Mi4yNDIxODggMjI1LjEwMTU2MiBDIDE2My4xNDg0MzggMjI2LjY1NjI1IDE2My45MjU3ODEgMjI4Ljg5ODQzOCAxNjQuMTgzNTk0IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTcwLjA4MDIxOSAtMTMwLjU5NjA2MyBMIDE3MC4wODAyMTkgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE5OC4xOTkyMTkgMjQ3LjI4OTA2MiBDIDE5OC40NTcwMzEgMjQ1LjkwNjI1IDE5OS4yMzQzNzUgMjQzLjY2NDA2MiAyMDAuMTQ0NTMxIDI0Mi4xMDkzNzUgTCAxOTYuMjU3ODEyIDI0Mi4xMDkzNzUgQyAxOTcuMTY0MDYyIDI0My42NjQwNjIgMTk3Ljk0MTQwNiAyNDUuOTA2MjUgMTk4LjE5OTIxOSAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMTUwLjE5MyIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC02IiB4PSIxODQuMjA5IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMjE0LjcxIiB5PSIyODEuMjYyIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDg3Ljg0MTc5NyUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI2OS4yNjU2MjUgNzAuODY3MTg4IEwgMjk3LjYxMzI4MSA3MC44NjcxODggTCAyOTcuNjEzMjgxIDQyLjUyMzQzOCBMIDI2OS4yNjU2MjUgNDIuNTIzNDM4IFogTSAyNjkuMjY1NjI1IDcwLjg2NzE4OCAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjY5LjI2NTYyNSA5OS42MTMyODEgTCAyNzguNzE0ODQ0IDk5LjYxMzI4MSBMIDI3OC43MTQ4NDQgNzEuMjY1NjI1IEwgMjY5LjI2NTYyNSA3MS4yNjU2MjUgWiBNIDI2OS4yNjU2MjUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDg3Ljg0MTc5NyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNzguNzE0ODQ0IDk5LjYxMzI4MSBMIDI4OC4xNjQwNjIgOTkuNjEzMjgxIEwgMjg4LjE2NDA2MiA3MS4yNjU2MjUgTCAyNzguNzE0ODQ0IDcxLjI2NTYyNSBaIE0gMjc4LjcxNDg0NCA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4OC4xNjQwNjIgOTkuNjEzMjgxIEwgMjk3LjYxMzI4MSA5OS42MTMyODEgTCAyOTcuNjEzMjgxIDcxLjI2NTYyNSBMIDI4OC4xNjQwNjIgNzEuMjY1NjI1IFogTSAyODguMTY0MDYyIDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYig5Ni4wNzY5NjUlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjE1LjIwNzAzMSAyMDEuNDY0ODQ0IEwgMjQ5LjIyMjY1NiAyMDEuNDY0ODQ0IEwgMjQ5LjIyMjY1NiAxNjcuNDQ1MzEyIEwgMjE1LjIwNzAzMSAxNjcuNDQ1MzEyIFogTSAyMTUuMjA3MDMxIDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMjIwLjA3NiIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC03IiB4PSIyMjguMTY3MjU3IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTgiIHg9IjIzNi4yNTg1MTQiIHk9IjE5MC4xMDEiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDg3Ljg0MTc5NyUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyNDkuMjIyNjU2IDIwMS40NjQ4NDQgTCAyODMuMjQyMTg4IDIwMS40NjQ4NDQgTCAyODMuMjQyMTg4IDE2Ny40NDUzMTIgTCAyNDkuMjIyNjU2IDE2Ny40NDUzMTIgWiBNIDI0OS4yMjI2NTYgMjAxLjQ2NDg0NCAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMTAwJSwxMDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0xIiB4PSIyNTQuMDkyIiB5PSIxOTAuMjM5Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjI2Mi4xODMyNTciIHk9IjE5MC4yMzkiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMjcwLjI3NDUxNCIgeT0iMTkwLjIzOSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI4My4yNDIxODggMjAxLjQ2NDg0NCBMIDMxNy4yNTc4MTIgMjAxLjQ2NDg0NCBMIDMxNy4yNTc4MTIgMTY3LjQ0NTMxMiBMIDI4My4yNDIxODggMTY3LjQ0NTMxMiBaIE0gMjgzLjI0MjE4OCAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTkiIHg9IjI5Mi4xNTMiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOSIgeD0iMzAwLjI0NDI1NyIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMDQuMDk1IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjIxMS4xMjQ2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjE4LjE1NDI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMjUuMTgzOTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjIzMi4yMTM1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjM5LjI0MzE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI0Ni4yNzI4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjUzLjMwMjQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyMzguMTEiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjQ1LjEzOTYzOCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIyNTIuMTY5Mjc2IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjI1OS4xOTg5MTQiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjY2LjIyODU1MiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyNzMuMjU4MTkiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMjgwLjI4NzgyOCIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyODcuMzE3NDY2IiB5PSIyNDAuMTc2Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjc1LjY0MSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyODIuNjcwNjM4IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjI4OS43MDAyNzYiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjk2LjcyOTkxNCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzMDMuNzU5NTUyIiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjMxMC43ODkxOSIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzMTcuODE4ODI4IiB5PSIyNTcuMTg0Ii8+CjwvZz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMTAwJSwwJSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjMyLjQxNjE1NiAtMTUyLjYwMzg3NSBMIDIzMi40MTYxNTYgLTE0Mi4yMDU0MzggTCAyMjUuMzM4MDMxIC0xNDIuMjA1NDM4IEwgMjI1LjMzODAzMSAtMTUyLjYwMzg3NSBaIE0gMjMyLjQxNjE1NiAtMTUyLjYwMzg3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDc5Ljk5ODc3OSUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDI2Ni40MzE3ODEgLTE2OS42MTE2ODggTCAyNjYuNDMxNzgxIC0xNTkuMjEzMjUgTCAyNTkuMzUzNjU2IC0xNTkuMjEzMjUgTCAyNTkuMzUzNjU2IC0xNjkuNjExNjg4IFogTSAyNjYuNDMxNzgxIC0xNjkuNjExNjg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMzkuOTk5MzklLDM5Ljk5OTM5JSwxMDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyOTYuOTMxNzgxIC0xODYuNjE5NSBMIDI5Ni45MzE3ODEgLTE3Ni4yMjEwNjMgTCAyODkuODUzNjU2IC0xNzYuMjIxMDYzIEwgMjg5Ljg1MzY1NiAtMTg2LjYxOTUgWiBNIDI5Ni45MzE3ODEgLTE4Ni42MTk1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDIwNC4wOTU4NDQgLTEzMC41OTYwNjMgTCAyMDQuMDk1ODQ0IC0xMzcuNTQxMzc1ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjMyLjIxNDg0NCAyMTMuMjczNDM4IEMgMjMyLjQ3NjU2MiAyMTEuODkwNjI1IDIzMy4yNTM5MDYgMjA5LjY0NDUzMSAyMzQuMTYwMTU2IDIwOC4wOTM3NSBMIDIzMC4yNzM0MzggMjA4LjA5Mzc1IEMgMjMxLjE3OTY4OCAyMDkuNjQ0NTMxIDIzMS45NTcwMzEgMjExLjg5MDYyNSAyMzIuMjE0ODQ0IDIxMy4yNzM0MzggIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyMzguMTE1Mzc1IC0xMzAuNTk2MDYzIEwgMjM4LjExNTM3NSAtMTU0LjU0OTE4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDI2Ni4yMzQzNzUgMjMwLjI4MTI1IEMgMjY2LjQ5MjE4OCAyMjguODk4NDM4IDI2Ny4yNjk1MzEgMjI2LjY1NjI1IDI2OC4xNzU3ODEgMjI1LjEwMTU2MiBMIDI2NC4yODkwNjIgMjI1LjEwMTU2MiBDIDI2NS4xOTUzMTIgMjI2LjY1NjI1IDI2NS45NzI2NTYgMjI4Ljg5ODQzOCAyNjYuMjM0Mzc1IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMjcyLjEzMSAtMTMwLjU5NjA2MyBMIDI3Mi4xMzEgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMwMC4yNSAyNDcuMjg5MDYyIEMgMzAwLjUwNzgxMiAyNDUuOTA2MjUgMzAxLjI4NTE1NiAyNDMuNjY0MDYyIDMwMi4xOTE0MDYgMjQyLjEwOTM3NSBMIDI5OC4zMDQ2ODggMjQyLjEwOTM3NSBDIDI5OS4yMTA5MzggMjQzLjY2NDA2MiAyOTkuOTg4MjgxIDI0NS45MDYyNSAzMDAuMjUgMjQ3LjI4OTA2MiAiLz4KPGcgc3R5bGU9ImZpbGw6cmdiKDEwMCUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTMiIHg9IjI1Mi4yNDEiIHk9IjI4MS4yNjIiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iMjg2LjI1NiIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTYiIHg9IjMxNi43NTciIHk9IjI4MS4yNjIiLz4KPC9nPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDk2LjA3Njk2NSUsODguMjMzOTQ4JSwzNC41MTA4MDMlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMjk3LjYxMzI4MSA3MC44NjcxODggTCAzMjUuOTYwOTM4IDcwLjg2NzE4OCBMIDMyNS45NjA5MzggNDIuNTIzNDM4IEwgMjk3LjYxMzI4MSA0Mi41MjM0MzggWiBNIDI5Ny42MTMyODEgNzAuODY3MTg4ICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDk2LjA3Njk2NSUsMCUsMCUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAyOTcuNjEzMjgxIDk5LjYxMzI4MSBMIDMwNy4wNjI1IDk5LjYxMzI4MSBMIDMwNy4wNjI1IDcxLjI2NTYyNSBMIDI5Ny42MTMyODEgNzEuMjY1NjI1IFogTSAyOTcuNjEzMjgxIDk5LjYxMzI4MSAiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4OC4yMzM5NDglLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzA3LjA2MjUgOTkuNjEzMjgxIEwgMzE2LjUxMTcxOSA5OS42MTMyODEgTCAzMTYuNTExNzE5IDcxLjI2NTYyNSBMIDMwNy4wNjI1IDcxLjI2NTYyNSBaIE0gMzA3LjA2MjUgOTkuNjEzMjgxICIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDAlLDAlLDM0LjUxMDgwMyUpO2ZpbGwtb3BhY2l0eToxOyIgZD0iTSAzMTYuNTExNzE5IDk5LjYxMzI4MSBMIDMyNS45NjA5MzggOTkuNjEzMjgxIEwgMzI1Ljk2MDkzOCA3MS4yNjU2MjUgTCAzMTYuNTExNzE5IDcxLjI2NTYyNSBaIE0gMzE2LjUxMTcxOSA5OS42MTMyODEgIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoOTYuMDc2OTY1JSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMxNy4yNTc4MTIgMjAxLjQ2NDg0NCBMIDM1MS4yNzM0MzggMjAxLjQ2NDg0NCBMIDM1MS4yNzM0MzggMTY3LjQ0NTMxMiBMIDMxNy4yNTc4MTIgMTY3LjQ0NTMxMiBaIE0gMzE3LjI1NzgxMiAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjMyMi4xMjQiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNyIgeD0iMzMwLjIxNTI1NyIgeT0iMTkwLjEwMSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC04IiB4PSIzMzguMzA2NTE0IiB5PSIxOTAuMTAxIi8+CjwvZz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw4OC4yMzM5NDglLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzUxLjI3MzQzOCAyMDEuNDY0ODQ0IEwgMzg1LjI4OTA2MiAyMDEuNDY0ODQ0IEwgMzg1LjI4OTA2MiAxNjcuNDQ1MzEyIEwgMzUxLjI3MzQzOCAxNjcuNDQ1MzEyIFogTSAzNTEuMjczNDM4IDIwMS40NjQ4NDQgIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDEwMCUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMSIgeD0iMzU2LjE0IiB5PSIxOTAuMTAxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTEiIHg9IjM2NC4yMzEyNTciIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOCIgeD0iMzcyLjMyMjUxNCIgeT0iMTkwLjEwMSIvPgo8L2c+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsMCUsMzQuNTEwODAzJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDM4NS4yODkwNjIgMjAxLjQ2NDg0NCBMIDQxOS4zMDQ2ODggMjAxLjQ2NDg0NCBMIDQxOS4zMDQ2ODggMTY3LjQ0NTMxMiBMIDM4NS4yODkwNjIgMTY3LjQ0NTMxMiBaIE0gMzg1LjI4OTA2MiAyMDEuNDY0ODQ0ICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwxMDAlLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgwLTkiIHg9IjM5NC4yMDEiIHk9IjE5MC4xMDEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtOSIgeD0iNDAyLjI5MjI1NyIgeT0iMTkwLjEwMSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigxMDAlLDAlLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzMDYuMTQyIiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjMxMy4xNzE2MzgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzIwLjIwMTI3NiIgeT0iMjIzLjE2OCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzMjcuMjMwOTE0IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjMzNC4yNjA1NTIiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzQxLjI5MDE5IiB5PSIyMjMuMTY4Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM0OC4zMTk4MjgiIHk9IjIyMy4xNjgiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzU1LjM0OTQ2NiIgeT0iMjIzLjE2OCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzNDAuMTU4IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM0Ny4xODc2MzgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzU0LjIxNzI3NiIgeT0iMjQwLjE3NiIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIzNjEuMjQ2OTE0IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM2OC4yNzY1NTIiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMzc1LjMwNjE5IiB5PSIyNDAuMTc2Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjM4Mi4zMzU4MjgiIHk9IjI0MC4xNzYiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMzg5LjM2NTQ2NiIgeT0iMjQwLjE3NiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigzOS45OTkzOSUsMzkuOTk5MzklLDEwMCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM3Ny42ODgiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMzg0LjcxNzYzOCIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIzOTEuNzQ3Mjc2IiB5PSIyNTcuMTg0Ii8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjM5OC43NzY5MTQiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDA1LjgwNjU1MiIgeT0iMjU3LjE4NCIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSI0MTIuODM2MTkiIHk9IjI1Ny4xODQiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iNDE5Ljg2NTgyOCIgeT0iMjU3LjE4NCIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDEwMCUsMCUsMCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDMzNC40NjMwMzEgLTE1Mi42MDM4NzUgTCAzMzQuNDYzMDMxIC0xNDIuMjA1NDM4IEwgMzI3LjM4NDkwNiAtMTQyLjIwNTQzOCBMIDMyNy4zODQ5MDYgLTE1Mi42MDM4NzUgWiBNIDMzNC40NjMwMzEgLTE1Mi42MDM4NzUgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw3OS45OTg3NzklLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAzNjguNDc4NjU2IC0xNjkuNjExNjg4IEwgMzY4LjQ3ODY1NiAtMTU5LjIxMzI1IEwgMzYxLjQwNDQzNyAtMTU5LjIxMzI1IEwgMzYxLjQwNDQzNyAtMTY5LjYxMTY4OCBaIE0gMzY4LjQ3ODY1NiAtMTY5LjYxMTY4OCAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzk4Ljk4MjU2MiAtMTg2LjYxOTUgTCAzOTguOTgyNTYyIC0xNzYuMjIxMDYzIEwgMzkxLjkwNDQzNyAtMTc2LjIyMTA2MyBMIDM5MS45MDQ0MzcgLTE4Ni42MTk1IFogTSAzOTguOTgyNTYyIC0xODYuNjE5NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuNzk3MDE7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigxMDAlLDAlLDAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAzMDYuMTQ2NjI1IC0xMzAuNTk2MDYzIEwgMzA2LjE0NjYyNSAtMTM3LjU0MTM3NSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDMzNC4yNjU2MjUgMjEzLjI3MzQzOCBDIDMzNC41MjM0MzggMjExLjg5MDYyNSAzMzUuMzAwNzgxIDIwOS42NDQ1MzEgMzM2LjIwNzAzMSAyMDguMDkzNzUgTCAzMzIuMzI0MjE5IDIwOC4wOTM3NSBDIDMzMy4yMzA0NjkgMjA5LjY0NDUzMSAzMzQuMDA3ODEyIDIxMS44OTA2MjUgMzM0LjI2NTYyNSAyMTMuMjczNDM4ICIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjc5NzAxO3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNzkuOTk4Nzc5JSwwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzQwLjE2MjI1IC0xMzAuNTk2MDYzIEwgMzQwLjE2MjI1IC0xNTQuNTQ5MTg4ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9IiBzdHJva2U6bm9uZTtmaWxsLXJ1bGU6bm9uemVybztmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiIGQ9Ik0gMzY4LjI4MTI1IDIzMC4yODEyNSBDIDM2OC41MzkwNjIgMjI4Ljg5ODQzOCAzNjkuMzE2NDA2IDIyNi42NTYyNSAzNzAuMjIyNjU2IDIyNS4xMDE1NjIgTCAzNjYuMzM5ODQ0IDIyNS4xMDE1NjIgQyAzNjcuMjQ2MDk0IDIyNi42NTYyNSAzNjguMDIzNDM4IDIyOC44OTg0MzggMzY4LjI4MTI1IDIzMC4yODEyNSAiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC43OTcwMTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMzc0LjE3Nzg3NSAtMTMwLjU5NjA2MyBMIDM3NC4xNzc4NzUgLTE3MS41NTcgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iIHN0cm9rZTpub25lO2ZpbGwtcnVsZTpub256ZXJvO2ZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDQwMi4yOTY4NzUgMjQ3LjI4OTA2MiBDIDQwMi41NTQ2ODggMjQ1LjkwNjI1IDQwMy4zMzIwMzEgMjQzLjY2NDA2MiA0MDQuMjM4MjgxIDI0Mi4xMDkzNzUgTCA0MDAuMzU1NDY5IDI0Mi4xMDkzNzUgQyA0MDEuMjYxNzE5IDI0My42NjQwNjIgNDAyLjAzOTA2MiAyNDUuOTA2MjUgNDAyLjI5Njg3NSAyNDcuMjg5MDYyICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMTAwJSwwJSwwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtMyIgeD0iMzU0LjI4OCIgeT0iMjgxLjI2MiIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw3OS45OTg3NzklLDAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMC0zIiB4PSIzODguMzA0IiB5PSIyODEuMjYyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDM5Ljk5OTM5JSwzOS45OTkzOSUsMTAwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDAtNiIgeD0iNDE4LjgwNSIgeT0iMjgxLjI2MiIvPgo8L2c+CjxwYXRoIHN0eWxlPSJmaWxsOm5vbmU7c3Ryb2tlLXdpZHRoOjAuMzk4NTtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDE4NC4yNTYgLTI4Ljc0NDUgTCAtMTcuMjA4ODQ0IC05Ni4xNzgwOTQgIiB0cmFuc2Zvcm09Im1hdHJpeCgxLDAsMCwtMSwyOC4xMTksNzEuMDY4KSIvPgo8cGF0aCBzdHlsZT0iZmlsbDpub25lO3N0cm9rZS13aWR0aDowLjM5ODU7c3Ryb2tlLWxpbmVjYXA6YnV0dDtzdHJva2UtbGluZWpvaW46bWl0ZXI7c3Ryb2tlOnJnYigwJSw1MCUsNTAlKTtzdHJva2Utb3BhY2l0eToxO3N0cm9rZS1taXRlcmxpbWl0OjEwOyIgZD0iTSAyOTguMDQxMTU2IC0yOC43NDQ1IEwgMzkxLjM4NDkwNiAtOTYuMTc4MDk0ICIgdHJhbnNmb3JtPSJtYXRyaXgoMSwwLDAsLTEsMjguMTE5LDcxLjA2OCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6MC4zOTg1O3N0cm9rZS1saW5lY2FwOmJ1dHQ7c3Ryb2tlLWxpbmVqb2luOm1pdGVyO3N0cm9rZTpyZ2IoMCUsNTAlLDUwJSk7c3Ryb2tlLW9wYWNpdHk6MTtzdHJva2UtbWl0ZXJsaW1pdDoxMDsiIGQ9Ik0gMTcuNjE1Mzc1IC0yMTIuODgxMjE5IEwgMTcuNjE1Mzc1IC0xOTYuMjE3MTU2IEwgMjY4LjY0MjcxOSAtMTk2LjIxNzE1NiBMIDI2OC42NDI3MTkgLTIxMi44ODEyMTkgWiBNIDE3LjYxNTM3NSAtMjEyLjg4MTIxOSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMi0xIiB4PSIxNzUuNTA5IiB5PSI2Mi4yMDQiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDItMSIgeD0iMTg2LjUwOTQ5MyIgeT0iNjIuMjA0Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgyLTEiIHg9IjE5Ny41MzQ3NzMiIHk9IjYyLjIwNCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMi0xIiB4PSIzMzQuMDk4IiB5PSI2Mi4yMDQiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDItMSIgeD0iMzQ1LjA5ODQ5MyIgeT0iNjIuMjA0Ii8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgyLTEiIHg9IjM1Ni4xMjM3NzMiIHk9IjYyLjIwNCIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMy0xIiB4PSI0MzUuMDM4IiB5PSIyNzYuMzEyIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgzLTEiIHg9IjQ0MS4zMjE2MzYiIHk9IjI3Ni4zMTIiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDMtMSIgeD0iNDQ3LjYxOTYxNyIgeT0iMjc2LjMxMiIvPgo8L2c+Cjx1c2UgeGxpbms6aHJlZj0iI2ltYWdlNSIgdHJhbnNmb3JtPSJtYXRyaXgoMy4xNDk4LDAsMCwzLjE0OTgsOC41OTEsLTAuMDAwOCkiLz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6NS42NjkzNDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDk5LjcyODY1NiAxNC4zNzI2ODcgTCAxMjguMzAyODc1IDE0LjM3MjY4NyAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDE2Ni4zMjAzMTIgNTYuNjk1MzEyIEwgMTUwLjQ4NDM3NSA0OC43NzczNDQgTCAxNTYuNDIxODc1IDU2LjY5NTMxMiBMIDE1MC40ODQzNzUgNjQuNjEzMjgxICIvPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMyIgeD0iNzAuMjY5IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijc0LjMyODk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSI4MS4zNTg2MTMiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iODguMzg4MjUxIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9Ijk1LjQxNzg4OSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxMDIuNDQ3NTI3IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjEwOS40NzcxNjUiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTE2LjUwNjgwMyIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxMjMuNTM2NDQxIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjEzMC41NjYwNzkiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTM5LjE0NTEwNiIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xIiB4PSIxNDYuMTc0NzQ0IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE1My4yMDQzODIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMiIgeD0iMTYwLjIzNDAyIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTIiIHg9IjE2Ny4yNjM2NTgiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMTc0LjI5MzI5NiIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIxODEuMzIyOTM0IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjE4OC4zNTI1NzIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNCIgeD0iMTk1LjM4MjIxIiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTUiIHg9IjIwMy45NjEyMzgiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNiIgeD0iMjEyLjc0MTExMiIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoNC0xIiB4PSIyMjEuNDc4IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTMiIHg9IjI0MC41MDEiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNyIgeD0iMjQ0LjU2MDk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS04IiB4PSIyNTEuNTkwNjEzIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjI1OC42MjAyNTEiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMSIgeD0iMjY3LjE5OTI3OCIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0yIiB4PSIyNzQuMjI4OTE2IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTEiIHg9IjI4MS4yNTg1NTQiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNCIgeD0iMjg4LjI4ODE5MiIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS01IiB4PSIyOTYuODY3MjIiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNiIgeD0iMzA1LjY0NzA5NCIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoNC0xIiB4PSIzMTQuMzg0IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTMiIHg9IjMzMy40MDciIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtOSIgeD0iMzM3LjQ2Njk3NSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS0xMCIgeD0iMzQxLjM2OTE0MSIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS05IiB4PSIzNDguNTcwOTMzIiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTQiIHg9IjM1Mi40NzMxIiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTkiIHg9IjM2MS4wNTIxMjciIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTEiIHg9IjM2NC45NTQyOTQiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtOSIgeD0iMzcxLjE5NDg5MSIgeT0iMzM1LjU5MSIvPgo8L2c+CjxnIHN0eWxlPSJmaWxsOnJnYigwJSw1MCUsNTAlKTtmaWxsLW9wYWNpdHk6MTsiPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS01IiB4PSIzNzkuNzczOTE4IiB5PSIzMzUuNTkxIi8+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTYiIHg9IjM4OC41NTM3OTMiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDQtMSIgeD0iMzk3LjI5IiB5PSIzMzUuNTkxIi8+CjwvZz4KPGcgc3R5bGU9ImZpbGw6cmdiKDAlLDUwJSw1MCUpO2ZpbGwtb3BhY2l0eToxOyI+CiAgPHVzZSB4bGluazpocmVmPSIjZ2x5cGgxLTkiIHg9IjQxNi4zMTMiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTAiIHg9IjQyMC4yMTUxNjYiIHk9IjMzNS41OTEiLz4KPC9nPgo8ZyBzdHlsZT0iZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7Ij4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtMTEiIHg9IjQyNy44MDQzMDYiIHk9IjMzNS41OTEiLz4KICA8dXNlIHhsaW5rOmhyZWY9IiNnbHlwaDEtNSIgeD0iNDM0LjA0NDkwMyIgeT0iMzM1LjU5MSIvPgogIDx1c2UgeGxpbms6aHJlZj0iI2dseXBoMS05IiB4PSI0NDIuODI0Nzc4IiB5PSIzMzUuNTkxIi8+CjwvZz4KPHBhdGggc3R5bGU9ImZpbGw6bm9uZTtzdHJva2Utd2lkdGg6NS42NjkzNDtzdHJva2UtbGluZWNhcDpidXR0O3N0cm9rZS1saW5lam9pbjptaXRlcjtzdHJva2U6cmdiKDAlLDUwJSw1MCUpO3N0cm9rZS1vcGFjaXR5OjE7c3Ryb2tlLW1pdGVybGltaXQ6MTA7IiBkPSJNIDU3LjU2MDY4OCAtMjQwLjM0NjA2MyBMIDU3LjU2MDY4OCAtMjIwLjM1Nzc4MSAiIHRyYW5zZm9ybT0ibWF0cml4KDEsMCwwLC0xLDI4LjExOSw3MS4wNjgpIi8+CjxwYXRoIHN0eWxlPSIgc3Ryb2tlOm5vbmU7ZmlsbC1ydWxlOm5vbnplcm87ZmlsbDpyZ2IoMCUsNTAlLDUwJSk7ZmlsbC1vcGFjaXR5OjE7IiBkPSJNIDg1LjY3OTY4OCAzMjEuMzEyNSBMIDkzLjU5NzY1NiAzMDUuNDc2NTYyIEwgODUuNjc5Njg4IDMxMS40MTQwNjIgTCA3Ny43NjE3MTkgMzA1LjQ3NjU2MiAiLz4KPC9nPgo8L3N2Zz4K" /></p>
Versuchen Sie aus dem Bild `zwinkersmiley.bmp` eine Nachricht zu
extrahieren und sie auszugeben! Das Bild wird schon als 3D-NumPy-Array
geladen (Höhe x Breite x Kanäle).
%% Cell type:code id:0004-8154792f1920f755c9dc3fb7a02c024aa0338feb6e6a9a02bc89046131b tags:
```
import numpy as np
import matplotlib.pyplot as plt
img = plt.imread('zwinkersmiley.bmp')
```
%% Cell type:markdown id:0009-b75d348f38b280c8c55fe4d45568a528fff1d6a5a2cadd717770563464f tags:
*Bonus: Schaffen Sie es auch umgekehrt, also eine Nachricht in einem
Bild zu verstecken?*
*Hinweis: Folgende Funktionen bzw. Methoden könnten nützlich sein:*
- [`np.ravel`](https://numpy.org/doc/stable/reference/generated/numpy.ravel.html)
formt ein Array in 1D um.
- [`np.reshape`](https://numpy.org/doc/stable/reference/generated/numpy.reshape.html#numpy.reshape)
bringt ein Array in eine beliebige Form, z. B. auch in 1D.
- [`np.astype`](https://numpy.org/doc/stable/reference/generated/numpy.astype.html#numpy-astype)
ändert den Typ eines Arrays, z. B. ein Array mit `int`s in `str`ings
oder in `'uint8'`.
- [`np.resize`](https://numpy.org/doc/stable/reference/generated/numpy.resize.html#numpy-resize)
erweitert ein Array auf eine bestimmte Größe und füllt es ggf. mit
0en auf.
- [`np.tile`](https://numpy.org/doc/stable/reference/generated/numpy.tile.html#numpy-tile)
pflastert ein Array eine bestimmte Anzahl aneinander, z. B. erzeugt
np.tile(\[1, 2, 3\], reps=\[2, 1\]) ein Array mit zwei Reihen \[1,
2, 3\].
- [`np.sum`](https://numpy.org/doc/stable/reference/generated/numpy.sum.html#numpy-sum)
summert ein Array entweder komplett oder entlang vorgegebner Achsen
auf, z. B. erzeugt np.sum(a, axis=1) die Zeilensummen eines
2D-Arrays `a`.
- [`np.fromstring`](https://numpy.org/doc/stable/reference/generated/numpy.fromstring.html#numpy-fromstring)
erzeugt ein NumPy-Array aus einem String, z. B.
`np.fromstring('1,2,3', dtype=int, sep=',')`
- [`np.full`](https://numpy.org/doc/stable/reference/generated/numpy.full.html#numpy.full)
erzeugt ein Array mit einem bestimmten Wert, Typ und Größe.
- [`str.join`](https://docs.python.org/3/library/stdtypes.html#str.join)
erlaubt eine Liste mit Strings zu vereinen, z. B. ohne Trenner mit
`''.join(['b', 'e']) == 'be'`
- [`range`](https://docs.python.org/3/library/stdtypes.html#range) zum
Iterieren mit `range(start, stop, step)`
- [`format`](https://docs.python.org/3/library/functions.html#format)
wandelt z. B. eine Ganzzahl in einen String entsprechend dem
Formatspezifizierer um, z. B. `format(5, '08b') == '00000101'`
- [`int`](https://docs.python.org/3/library/functions.html#int)
wandelt einen String in eine Ganzzahl um, z. B. `int('5') == 5` oder
mit `base=2` in Binärschreibweise: `int('101', base=2) == 5`.
- [`chr`](https://docs.python.org/3/library/functions.html#chr)
wandelt eine Ganzzahl in ein Zeichen um, z. B. `chr(101) == 'e'`
- [`ord`](https://docs.python.org/3/library/functions.html#ord)
wandelt ein Zeichen in eine Ganzzahl um, z. B. `ord('e') == 101`
## Lösung
Zunächst machen wir aus dem 3D-NumPy-Array mittels `ravel` ein
1D-NumPy-Array. Anschließend sind wir an dem jeweils letzten Bit
interessiert. Das bekommen wir ganz einfach indem wir Modulo 2 (Restwert
der Division mit 2) des Arrays berechnen. Für gerade Zahlen ist der Rest
0 für ungerade 1.
%% Cell type:code id:0010-e7b7b5fc735282ad62b19bd1dd49586d2badba14201e8892f69dc74b210 tags:
```
noise = img.ravel() % 2
```
%% Cell type:markdown id:0011-f2af408fef45d452cf03b6d6350eb996166adff3483f48e8359b3b46753 tags:
Jetzt haben wir ein 1D-NumPy-Array mit 0en und 1en. Man kann von hier
sicherlich auf vielerlei Art weiter kommen. Wir wandeln die Zahlen in
ihre String-Repräsentation um und führen Sie dann zu einem langen String
aus 0en und 1en zusammen.
%% Cell type:code id:0012-e8769af5f0f93b3d790101ef11b2f35ea21b325ff38815ebcd95b599854 tags:
```
stream = ''.join(noise.astype(str))
```
%% Cell type:markdown id:0013-5d8bed03128d27cfac6b23b3a86e06ddd10625b715c3526d1a204e3646b tags:
Als nächstes trennen wir den String per Slicing in (max.) 8er-Ketten und
wandeln diese in Ganzzahlen um.
%% Cell type:code id:0014-67ba02814a1f1e523f41beb62ed02df65f0643041dc2a73023a4a168abb tags:
```
ints = [int(stream[start:start + 8], base=2) for start in range(0, len(stream) - 8, 8)]
```
%% Cell type:markdown id:0015-d39a8023abaeed6595c34bbe08c8e78cbbf35b47f8f5fab3f9664d3d2d9 tags:
Jede Ganzzahl, die nicht 0 ist, wandeln wir als nächstes mit `chr` zu
einem Zeichen um und diese führen wir zu einem String – der versteckten
Nachricht – zusammen.
%% Cell type:code id:0016-21242ff5249eb22c1ce72b43f4f9d24512b7f2f3d928213c7d8d4098948 tags:
```
chars = [chr(i) for i in ints if i]
msg = ''.join(chars)
```
%% Cell type:code id:0017-2417d4e0a8b2829fba586d0a4c0d5ae48b73fc7ffd6f4bf6da7324894af tags:
```
print(msg)
```
%% Output
Yay! Sie haben die Aufgabe geschafft. War gar nicht so einfach, oder? Naja... viel Spaß noch mit den anderen Aufgaben! ;)
%% Cell type:markdown id:0018-b2c2f1aa5ab516501c202b92deac6c65ed8e7b622c3e112e7e423d85619 tags:
Hier noch eine Alternative Lösung, die erst jeweils 8 0en und 1en in
eine Zeile schreibt. Dabei wird `resize` gebraucht, falls die Länge
nicht durch 8 teilbar ist. So werden fehlende Werte mit 0 aufgefüllt.
Das Array wird dann mit den Bitwertigkeiten (128, 64, 32, 16, 8, 4,
2, 1) multipliziert. Anschließend werden die Zeilensummen gebildet um
die Ganzzahlen zu erhalten. Es kann sein, dass am Ende nur 0en stehen,
um auf Bildgröße aufzufüllen, daher entfernen wir 0en. Das sind ohnehin
keine gültigen Zeichen. Die Zahlen werden dann mittels `chr` in Zeichen
umgewandelt und zu einem String zusammengefügt.
%% Cell type:code id:0019-8d445a46f0cea5dba0c3730fe53ecdaebdc8bf826467df070f406447057 tags:
```
noise.resize((int(np.ceil(noise.size / 8)), 8))
bit_values = noise * 2 ** np.arange(7, -1, -1)
ints = np.sum(bit_values, axis=1)
ints = ints[ints != 0]
msg = ''.join(map(chr, ints))
```
......
This diff is collapsed.
This diff is collapsed.
%% Cell type:markdown id: tags:
# Code zu Folien
Dieses Skript bzw. Jupyter-Notebook enthält den Code, der auch auf den Folien "Skalierung & Optimierung" enthalten ist. Zum Vorbereiten, Mitmachen oder Nacharbeiten.
%% Cell type:code id: tags:
```
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from IPython.display import display
import seaborn as sns
from sklearn.metrics import ConfusionMatrixDisplay
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import MinMaxScaler, StandardScaler, RobustScaler
rng = np.random.default_rng()
df = pd.read_csv('autos.csv')
X = df.drop(columns=['Marke', 'Modell', 'Fahrzeugklasse'])
y = df['Fahrzeugklasse']
def plot_split(y_train, y_test):
y = pd.concat((y_train, y_test), axis='index')
counts = pd.concat((y.value_counts(), y_train.value_counts(), y_test.value_counts()), axis='columns').sort_index()
counts.columns = ['full', 'train', 'test']
ax = (counts * 100 / counts.max()).plot.bar(ylim=(0, 100))
for container, col in zip(ax.containers, counts):
ax.bar_label(container, counts[col].astype(str), rotation=70)
ax.yaxis.set_ticklabels([])
ax.yaxis.set_ticks([])
plt.legend(loc='center')
```
%% Cell type:code id: tags:
```
abs_test_size = int(round(len(df) * 0.2)) # 20% entsprechen 123 samples
df_idx = df.index
test_idx = df_idx[:abs_test_size] # erste 20% der Daten
train_idx = df_idx[abs_test_size:] # letzte 80% der Daten
X_train, X_test = X.loc[train_idx], X.loc[test_idx] # kein Zufall!
y_train, y_test = y.loc[train_idx], y.loc[test_idx]
```
%% Cell type:code id: tags:
```
abs_test_size = int(round(len(df) * 0.2)) # 20% entsprechen 123 samples
df_idx_shuffled = rng.permutation(df.index) # rng: random number generator
test_idx = df_idx_shuffled[:abs_test_size] # zufällige 20% der Daten
train_idx = df_idx_shuffled[abs_test_size:] # zufällige 80% der Daten
X_train, X_test = X.loc[train_idx], X.loc[test_idx]
y_train, y_test = y.loc[train_idx], y.loc[test_idx]
```
%% Cell type:code id: tags:
```
np.random.seed(8264) # wähle richtig schlechte "zufällige" Aufteilung
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
plot_split(y_train=y_train, y_test=y_test)
```
%% Cell type:code id: tags:
```
np.random.seed(8264)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, stratify=y)
plot_split(y_train=y_train, y_test=y_test)
```
%% Cell type:code id: tags:
```
model = KNeighborsClassifier(weights='uniform')
# model = KNeighborsClassifier(weights='distance')
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
```
%% Cell type:code id: tags:
```
fig = plt.figure()
sns.set_theme()
con = pd.crosstab(y_test, y_pred) # absolute Zahlen
# con = pd.crosstab(y_test, y_pred, normalize='index') # normalisiert über Spalten
con.index.name = 'Testdaten'
con.columns.name = 'Vorhergesagt'
ax = sns.heatmap(con, cmap='YlGn', annot=True, cbar=False)
ax.xaxis.set_label_position('top')
ax.xaxis.set_ticks_position('top')
```
%% Cell type:code id: tags:
```
fig = plt.figure()
sns.reset_orig()
cmd = ConfusionMatrixDisplay.from_predictions(y_test, y_pred, cmap='YlGn',
colorbar=False, normalize='true')
cmd.ax_.xaxis.set_label_position('top')
cmd.ax_.xaxis.set_ticks_position('top')
```
%% Cell type:code id: tags:
```
# unskaliert:
df = pd.DataFrame(columns=['unskaliert', 'normiert', 'standardisiert', 'robust skaliert'], index=['d(x_29, x_200)', 'd(x_29, x_540)', 'd(x_200, x_540)'])
d29_200 = np.linalg.norm(X.loc[29] - X.loc[200], ord=1)
d29_540 = np.linalg.norm(X.loc[29] - X.loc[540], ord=1)
d200_540 = np.linalg.norm(X.loc[200] - X.loc[540], ord=1)
df['unskaliert'] = [d29_200, d29_540, d200_540]
# normiert:
X_scaled = (X - X.min()) / (X.max() - X.min())
# oder:
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['normiert'] = [d29_200, d29_540, d200_540]
# standardisiert:
X_scaled = (X - X.mean()) / X.std()
# oder:
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['standardisiert'] = [d29_200, d29_540, d200_540]
# robust skaliert:
iqr = X.quantile(0.75) - X.quantile(0.25)
X_scaled = (X - X.median()) / iqr
# oder:
scaler = RobustScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['robust skaliert'] = [d29_200, d29_540, d200_540]
display(df)
```
%% Cell type:code id: tags:
```
xmin, xmax = X_train.min(), X_train.max() # Pandas DataFrames
# xmin, xmax = X_train.min(axis=0), X_train.max(axis=0) # NumPy Arrays
X_train_scaled = (X_train - xmin) / (xmax - xmin)
X_test_scaled = (X_test - xmin) / (xmax - xmin)
scaler = MinMaxScaler()
scaler.fit(X_train)
X_train_scaled = scaler.transform(X_train)
X_test_scaled = scaler.transform(X_test)
```
%% Cell type:code id: tags:
```
from sklearn.model_selection import cross_val_score, KFold
folds = KFold(5, shuffle=True) # zufällig mischen
scores = cross_val_score(model, X, y, cv=folds, scoring='accuracy')
print(100 * scores.round(3), end=' ')
print(f'mean: {scores.mean():.2%}, std.dev.: {scores.std():.2%}')
```
%% Cell type:code id: tags:
```
score_records = []
for k in range(1, 9):
for p in (1, 2, 4, float('inf')):
# model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='uniform')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds,
scoring='accuracy')
score_cv = scores_cv.mean()
score_records.append((k, p, score_cv))
scores = pd.DataFrame.from_records(score_records, columns=['k', 'p', 'score'])
# display(scores)
display(scores.sort_values('score'))
scr2d = scores.pivot(index='k', columns='p', values='score')
display(scr2d)
sns.heatmap(scr2d, annot=True, cbar=False)
```
%% Cell type:code id: tags:
```
score_records = []
for trial in range(30): # 30 Durchläufe
k = rng.integers(1, 9) # Integer zwischen 1 und 9
p = rng.choice([1, 2, 4, float('inf')]) # einer der Werte
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds, scoring='accuracy')
score_cv = scores_cv.mean()
score_records.append((k, p, score_cv))
scores = pd.DataFrame.from_records(score_records, columns=['k', 'p', 'score'])
display(scores.sort_values('score'))
```
%% Cell type:code id: tags:
```
import optuna
from plotly.offline import plot
def objective(trial): # Zielfunktion (Genauigkeit) soll maximiert werden
k = trial.suggest_int('k', 1, 9) # Zielfunktion hängt von Hyperparametern ab
p = trial.suggest_categorical('p', [1, 2, 4, float('inf')])
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds, scoring='accuracy')
return scores_cv.mean()
study = optuna.create_study(direction='maximize') # maximieren, nicht minimieren (default)
study.optimize(objective, n_trials=30) # Anzahl Parameterkombinationen
scores = study.trials_dataframe(attrs=('params', 'value'))
scores = scores.rename(columns={'params_k': 'k', 'params_p': 'p', 'value': 'score'})
scores = scores.groupby(['k', 'p']).mean().reset_index()
scr2d = scores.pivot(index='k', columns='p', values='score')
# heatmap
sns.heatmap(scr2d, annot=True, cbar=False)
# parallel coordinates plot
fig = optuna.visualization.plot_parallel_coordinate(study)
fig.show()
plot(fig, auto_open=True)
```
# %% [markdown]
# # Code zu Folien
#
# Dieses Skript bzw. Jupyter-Notebook enthält den Code, der auch auf den Folien "Skalierung & Optimierung" enthalten ist. Zum Vorbereiten, Mitmachen oder Nacharbeiten.
# %% imports
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from IPython.display import display
import seaborn as sns
from sklearn.metrics import ConfusionMatrixDisplay
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import MinMaxScaler, StandardScaler, RobustScaler
rng = np.random.default_rng()
df = pd.read_csv('autos.csv')
X = df.drop(columns=['Marke', 'Modell', 'Fahrzeugklasse'])
y = df['Fahrzeugklasse']
def plot_split(y_train, y_test):
y = pd.concat((y_train, y_test), axis='index')
counts = pd.concat((y.value_counts(), y_train.value_counts(), y_test.value_counts()), axis='columns').sort_index()
counts.columns = ['full', 'train', 'test']
ax = (counts * 100 / counts.max()).plot.bar(ylim=(0, 100))
for container, col in zip(ax.containers, counts):
ax.bar_label(container, counts[col].astype(str), rotation=70)
ax.yaxis.set_ticklabels([])
ax.yaxis.set_ticks([])
plt.legend(loc='center')
# %% Daten in Trainings- und Testmenge aufteilen, kein Zufall
abs_test_size = int(round(len(df) * 0.2)) # 20% entsprechen 123 samples
df_idx = df.index
test_idx = df_idx[:abs_test_size] # erste 20% der Daten
train_idx = df_idx[abs_test_size:] # letzte 80% der Daten
X_train, X_test = X.loc[train_idx], X.loc[test_idx] # kein Zufall!
y_train, y_test = y.loc[train_idx], y.loc[test_idx]
# %% Daten in Trainings- und Testmenge aufteilen, mit Zufall
abs_test_size = int(round(len(df) * 0.2)) # 20% entsprechen 123 samples
df_idx_shuffled = rng.permutation(df.index) # rng: random number generator
test_idx = df_idx_shuffled[:abs_test_size] # zufällige 20% der Daten
train_idx = df_idx_shuffled[abs_test_size:] # zufällige 80% der Daten
X_train, X_test = X.loc[train_idx], X.loc[test_idx]
y_train, y_test = y.loc[train_idx], y.loc[test_idx]
# %% Daten in Trainings- und Testmenge aufteilen, mit Zufall per Scikit-Learn
np.random.seed(8264) # wähle richtig schlechte "zufällige" Aufteilung
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
plot_split(y_train=y_train, y_test=y_test)
# %% Daten in Trainings- und Testmenge aufteilen, mit Zufall und Stratifikation
np.random.seed(8264)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, stratify=y)
plot_split(y_train=y_train, y_test=y_test)
# %% Vorhersage mit k-NN Modell für Konfusionsmatrix
model = KNeighborsClassifier(weights='uniform')
# model = KNeighborsClassifier(weights='distance')
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
# %% Konfusionsmatrix mit Pandas und Seaborn
fig = plt.figure()
sns.set_theme()
con = pd.crosstab(y_test, y_pred) # absolute Zahlen
# con = pd.crosstab(y_test, y_pred, normalize='index') # normalisiert über Spalten
con.index.name = 'Testdaten'
con.columns.name = 'Vorhergesagt'
ax = sns.heatmap(con, cmap='YlGn', annot=True, cbar=False)
ax.xaxis.set_label_position('top')
ax.xaxis.set_ticks_position('top')
# %% Konfusionsmatrix mit Scikii-Learn
fig = plt.figure()
sns.reset_orig()
cmd = ConfusionMatrixDisplay.from_predictions(y_test, y_pred, cmap='YlGn',
colorbar=False, normalize='true')
cmd.ax_.xaxis.set_label_position('top')
cmd.ax_.xaxis.set_ticks_position('top')
# %% Skalierung
# unskaliert:
df = pd.DataFrame(columns=['unskaliert', 'normiert', 'standardisiert', 'robust skaliert'], index=['d(x_29, x_200)', 'd(x_29, x_540)', 'd(x_200, x_540)'])
d29_200 = np.linalg.norm(X.loc[29] - X.loc[200], ord=1)
d29_540 = np.linalg.norm(X.loc[29] - X.loc[540], ord=1)
d200_540 = np.linalg.norm(X.loc[200] - X.loc[540], ord=1)
df['unskaliert'] = [d29_200, d29_540, d200_540]
# normiert:
X_scaled = (X - X.min()) / (X.max() - X.min())
# oder:
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['normiert'] = [d29_200, d29_540, d200_540]
# standardisiert:
X_scaled = (X - X.mean()) / X.std()
# oder:
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['standardisiert'] = [d29_200, d29_540, d200_540]
# robust skaliert:
iqr = X.quantile(0.75) - X.quantile(0.25)
X_scaled = (X - X.median()) / iqr
# oder:
scaler = RobustScaler()
X_scaled = scaler.fit_transform(X)
d29_200 = np.linalg.norm(X_scaled[29] - X_scaled[200], ord=1)
d29_540 = np.linalg.norm(X_scaled[29] - X_scaled[540], ord=1)
d200_540 = np.linalg.norm(X_scaled[200] - X_scaled[540], ord=1)
df['robust skaliert'] = [d29_200, d29_540, d200_540]
display(df)
# %% Skalierung durchführen
xmin, xmax = X_train.min(), X_train.max() # Pandas DataFrames
# xmin, xmax = X_train.min(axis=0), X_train.max(axis=0) # NumPy Arrays
X_train_scaled = (X_train - xmin) / (xmax - xmin)
X_test_scaled = (X_test - xmin) / (xmax - xmin)
scaler = MinMaxScaler()
scaler.fit(X_train)
X_train_scaled = scaler.transform(X_train)
X_test_scaled = scaler.transform(X_test)
# %% Kreuzvalidierung
from sklearn.model_selection import cross_val_score, KFold
folds = KFold(5, shuffle=True) # zufällig mischen
scores = cross_val_score(model, X, y, cv=folds, scoring='accuracy')
print(100 * scores.round(3), end=' ')
print(f'mean: {scores.mean():.2%}, std.dev.: {scores.std():.2%}')
# %% Manueller Grid Search
score_records = []
for k in range(1, 9):
for p in (1, 2, 4, float('inf')):
# model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='uniform')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds,
scoring='accuracy')
score_cv = scores_cv.mean()
score_records.append((k, p, score_cv))
scores = pd.DataFrame.from_records(score_records, columns=['k', 'p', 'score'])
# display(scores)
display(scores.sort_values('score'))
scr2d = scores.pivot(index='k', columns='p', values='score')
display(scr2d)
sns.heatmap(scr2d, annot=True, cbar=False)
# %% Manueller Random Search
score_records = []
for trial in range(30): # 30 Durchläufe
k = rng.integers(1, 9) # Integer zwischen 1 und 9
p = rng.choice([1, 2, 4, float('inf')]) # einer der Werte
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds, scoring='accuracy')
score_cv = scores_cv.mean()
score_records.append((k, p, score_cv))
scores = pd.DataFrame.from_records(score_records, columns=['k', 'p', 'score'])
display(scores.sort_values('score'))
# %% Hyperparameteroptimierung mit Optuna
import optuna
from plotly.offline import plot
def objective(trial): # Zielfunktion (Genauigkeit) soll maximiert werden
k = trial.suggest_int('k', 1, 9) # Zielfunktion hängt von Hyperparametern ab
p = trial.suggest_categorical('p', [1, 2, 4, float('inf')])
model = KNeighborsClassifier(n_neighbors=k, p=p, weights='distance')
scores_cv = cross_val_score(model, X_train_scaled, y_train, cv=folds, scoring='accuracy')
return scores_cv.mean()
study = optuna.create_study(direction='maximize') # maximieren, nicht minimieren (default)
study.optimize(objective, n_trials=30) # Anzahl Parameterkombinationen
scores = study.trials_dataframe(attrs=('params', 'value'))
scores = scores.rename(columns={'params_k': 'k', 'params_p': 'p', 'value': 'score'})
scores = scores.groupby(['k', 'p']).mean().reset_index()
scr2d = scores.pivot(index='k', columns='p', values='score')
# heatmap
sns.heatmap(scr2d, annot=True, cbar=False)
# parallel coordinates plot
fig = optuna.visualization.plot_parallel_coordinate(study)
fig.show()
plot(fig, auto_open=True)
%% Cell type:markdown id:0001-f51edf4079cb1b470c271c788df582594acbcaaaaa1ec62e3286ad082e3 tags:
# Mosaic
In dieser Aufgabe soll ein Bild `target` aus vielen kleinen Bildern
zusammengesetzt werden. Dazu werden im Startcode bereits die
CIFAR100-Bilder geladen und in der Variable `imgs` gespeichert.
%% Cell type:code id:0002-6e8318925ecf9f50d56d73b2ed5ffb3d3ba92762c1fbfa2ad105e6b65fe tags:
%% Cell type:code id:0002-a43f4956ced121f01ca3eb39b2e6ddc8401d6838f37a1e7845c63020e34 tags:
```
import matplotlib.pyplot as plt
import numpy as np
from sklearn.neighbors import NearestNeighbors
from tensorflow import keras
import keras
rng = np.random.default_rng()
(x_train, y_train), (x_test, y_test) = keras.datasets.cifar100.load_data()
imgs = np.vstack((x_train, x_test))
target = plt.imread('frochte.webp')
```
%% Cell type:markdown id:0003-941da6218559043f35279a4c335f50e5b68c0c514e67ffbd4322530f8f5 tags:
Es sind 60000 32x32 RGB-Bilder, was man an der Shape schön erkennt:
%% Cell type:code id:0004-1229e2d8dc8e1728d3048fefc550fc060b1f1de9193f0f5a46dca3238ec tags:
```
imgs.shape
```
%% Output
(60000, 32, 32, 3)
%% Cell type:markdown id:0005-22c3afb3e0a561db8a3de73e91fd6bcc6390eaf182dee0c35bf37ed31ce tags:
Das Zielbild hat hier folgende Dimensionen:
%% Cell type:code id:0006-2d221d7ec0ae34f32bfa5ed8787519ea66338bd40130f2f54827c73740d tags:
```
target.shape
```
%% Output
(68, 50, 3)
%% Cell type:markdown id:0009-de978f4ff20b8c801097dd510fc91fbafff5599b0738a4427307471b77a tags:
Bilden Sie von jedem Bild den Mittelwert, aber nur über die Pixel, nicht
über die Farben. Ihr Ziel ist also eine Shape von (60000, 3). Suchen Sie
anschließend zu jedem Pixel von `target` das Bild mit den ähnlichsten
Farben. *Bonus: Suchen Sie z. B. die 10 Bilder mit den ähnlichsten
Farben und wählen Sie ein zufälliges aus.* Setzen Sie anschließend die
gefundenen Bilder als `mosaic` zusammen, sodass ein großes Bild 32-mal
so groß wie das ursprüngliche `target`-Bild erhalten, also hier
$(68 \cdot 32, 50 \cdot 32, 3)$.
## Lösung
Leider noch ohne Erklärung, sorry!
%% Cell type:code id:0010-1af355aab8dd3341d7a01273fc3536afcd2422c84d1688ecc9b968450a4 tags:
```
X = imgs.mean(axis=(1, 2))
# # just the single nearest neighbor (lots of repetition)
ind = NearestNeighbors(n_neighbors=1).fit(X).kneighbors(target.reshape((-1, 3)), return_distance=False)
# select one out of the ten nearest neighbors
ind = NearestNeighbors(n_neighbors=12).fit(X).kneighbors(target.reshape((-1, 3)), return_distance=False)
ind = ind[np.arange(ind.shape[0]), rng.choice(ind.shape[1], size=ind.shape[0])]
ind2d = ind.reshape(target.shape[:2])
tiles = imgs[ind2d]
mosaic = np.hstack(np.hstack(tiles)) # this is hard to understand! First dimension vanishes and third is buffed. Inner call uses the vertical tiles and stacks them vertically, second used the horizontal tiles and stacks them horizontally...
# This is more straightforward:
mosaic = np.vstack([np.hstack(tiles[row]) for row in range(tiles.shape[0])])
```
%% Cell type:markdown id:0012-c5712a3895bf6d089e3023df66a35ce6cdebc2bb919c5f5b7fd3bae4f27 tags:
## Tests
Die Dimensionen von `mosaic` sind:
%% Cell type:code id:0013-6117ace787b35b15ec90c0b04bef2dee6442176716271b8bdf9775313cc tags:
```
mosaic.shape
```
%% Output
(2176, 1600, 3)
%% Cell type:markdown id:0014-63c76eaa9d35584bc36e3f2ca577bfc94f8834910dab8da4a980df5f86c tags:
und sollten sein:
%% Cell type:code id:0015-0516c0ef5eb482707621327f31354b03bfd194cf6e37a97de4db231e3b4 tags:
```
target.shape[0] * 32, target.shape[1] * 32, 3
```
%% Output
(2176, 1600, 3)
%% Cell type:markdown id:0016-7fe0b7441cce862b7e35b9f32c45195a35b532bd6aaa1f6d82bcefec760 tags:
Hier lässt sich das Mosaic-Bild plotten:
%% Cell type:code id:0017-c81f1b00d2217b3ef3a541a3bf0969c691e633f1c550f30d84efc918327 tags:
```
plt.figure(figsize=(16, 10))
plt.imshow(mosaic)
```
......
%% Cell type:markdown id:0001-f51edf4079cb1b470c271c788df582594acbcaaaaa1ec62e3286ad082e3 tags:
# Mosaic
In dieser Aufgabe soll ein Bild `target` aus vielen kleinen Bildern
zusammengesetzt werden. Dazu werden im Startcode bereits die
CIFAR100-Bilder geladen und in der Variable `imgs` gespeichert.
%% Cell type:code id:0002-6e8318925ecf9f50d56d73b2ed5ffb3d3ba92762c1fbfa2ad105e6b65fe tags:
%% Cell type:code id:0002-a43f4956ced121f01ca3eb39b2e6ddc8401d6838f37a1e7845c63020e34 tags:
```
import matplotlib.pyplot as plt
import numpy as np
from sklearn.neighbors import NearestNeighbors
from tensorflow import keras
import keras
rng = np.random.default_rng()
(x_train, y_train), (x_test, y_test) = keras.datasets.cifar100.load_data()
imgs = np.vstack((x_train, x_test))
target = plt.imread('frochte.webp')
```
%% Cell type:markdown id:0003-941da6218559043f35279a4c335f50e5b68c0c514e67ffbd4322530f8f5 tags:
Es sind 60000 32x32 RGB-Bilder, was man an der Shape schön erkennt:
%% Cell type:code id:0004-1229e2d8dc8e1728d3048fefc550fc060b1f1de9193f0f5a46dca3238ec tags:
```
imgs.shape
```
%% Output
(60000, 32, 32, 3)
%% Cell type:markdown id:0005-22c3afb3e0a561db8a3de73e91fd6bcc6390eaf182dee0c35bf37ed31ce tags:
Das Zielbild hat hier folgende Dimensionen:
%% Cell type:code id:0006-2d221d7ec0ae34f32bfa5ed8787519ea66338bd40130f2f54827c73740d tags:
```
target.shape
```
%% Output
(68, 50, 3)
%% Cell type:markdown id:0008-ed2a543c286667ee3711dcf37d5ebf4923818e7172044500e2e1aef94f4 tags:
Bilden Sie von jedem Bild den Mittelwert, aber nur über die Pixel, nicht
über die Farben. Ihr Ziel ist also eine Shape von (60000, 3). Suchen Sie
anschließend zu jedem Pixel von `target` das Bild mit den ähnlichsten
Farben. *Bonus: Suchen Sie z. B. die 10 Bilder mit den ähnlichsten
Farben und wählen Sie ein zufälliges aus.* Setzen Sie anschließend die
gefundenen Bilder als `mosaic` zusammen, sodass ein großes Bild 32-mal
so groß wie das ursprüngliche `target`-Bild erhalten, also hier
$(68 \cdot 32, 50 \cdot 32, 3)$.
Hier Ihr Code:
%% Cell type:code id:0009-44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 tags:
```
```
%% Cell type:markdown id:0011-c5712a3895bf6d089e3023df66a35ce6cdebc2bb919c5f5b7fd3bae4f27 tags:
## Tests
Die Dimensionen von `mosaic` sind:
%% Cell type:code id:0012-6117ace787b35b15ec90c0b04bef2dee6442176716271b8bdf9775313cc tags:
```
mosaic.shape
```
%% Output
(2176, 1600, 3)
%% Cell type:markdown id:0013-63c76eaa9d35584bc36e3f2ca577bfc94f8834910dab8da4a980df5f86c tags:
und sollten sein:
%% Cell type:code id:0014-0516c0ef5eb482707621327f31354b03bfd194cf6e37a97de4db231e3b4 tags:
```
target.shape[0] * 32, target.shape[1] * 32, 3
```
%% Output
(2176, 1600, 3)
%% Cell type:markdown id:0015-7fe0b7441cce862b7e35b9f32c45195a35b532bd6aaa1f6d82bcefec760 tags:
Hier lässt sich das Mosaic-Bild plotten:
%% Cell type:code id:0016-c81f1b00d2217b3ef3a541a3bf0969c691e633f1c550f30d84efc918327 tags:
```
plt.figure(figsize=(16, 10))
plt.imshow(mosaic)
```
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment