Avatar
b
87ae535006d142ab4ffb28c964241bca3a2f98801f5ce6282cd97f8b8d6b32ed

#datauri_info

data:text/html;base64,PCFET0NUWVBFIGh0bWw+CjxodG1sPgogIDxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPHRpdGxlPmRhdGF1cmkgaW5mbzwvdGl0bGU+CiAgICA8c3R5bGU+CiAgICAgIGJvZHkgewogICAgICAgIG1hcmdpbjogMWVtIDFlbSAzZW0gMWVtOwogICAgICB9CgogICAgICBoZWFkZXIgaDEsCiAgICAgIGhlYWRlciBoMiB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOwogICAgICAgIG1hcmdpbi1yaWdodDogMWVtOwogICAgICB9CgogICAgICAubWVudSwKICAgICAgLmNvbnRlbnQgewogICAgICAgIGRpc3BsYXk6IG5vbmU7CiAgICAgIH0KCiAgICAgIC5hY3RpdmUgewogICAgICAgIGRpc3BsYXk6IGJsb2NrOwogICAgICB9CgogICAgICBoMiA+IGEgewogICAgICAgIHBhZGRpbmc6IC4yZW0gLjNlbTsKICAgICAgfQoKICAgICAgYTp2aXNpdGVkIHsKICAgICAgICBjb2xvcjogaW5oZXJpdDsKICAgICAgfQoKICAgICAgYTpob3ZlciB7CiAgICAgICAgY29sb3I6IHJnYigyMDAsIDAsIDApOwogICAgICB9CgogICAgICAuZGF0YSB7CiAgICAgICAgYmFja2dyb3VuZDogcmdiKDIyMCwgMjIwLCAxMDApOwogICAgICAgIC8qYmFja2dyb3VuZDogcmdiKDE4MCwgMjAwLCAyMzApOyovCiAgICAgICAgLypiYWNrZ3JvdW5kOiByZ2IoMTgwLCAyMDAsIDIzMCk7Ki8KICAgICAgICBvdmVyZmxvdzogaGlkZGVuOwogICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsKICAgICAgICBtYXgtaGVpZ2h0OiAxMGVtOwogICAgICAgIHBhZGRpbmc6IC4zZW07CiAgICAgIH0KCiAgICAgIC5kYXRhLAogICAgICBhIHsKICAgICAgICBib3JkZXItcmFkaXVzOiAuM2VtOwogICAgICB9CgogICAgICAuZGF0YS5zY3JvbGwgewogICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CiAgICAgIH0KCiAgICAgIGgyIHsKICAgICAgICBtYXJnaW46IDFlbSAwIC40ZW0gMDsKICAgICAgfQoKICAgICAgaDI6Zmlyc3QtY2hpbGQgewogICAgICAgIG1hcmdpbi10b3A6IDA7CiAgICAgIH0KCiAgICAgIHAgewogICAgICAgIG1hcmdpbjogMCAwIDFlbSAwOwogICAgICB9CiAgICA8L3N0eWxlPgogIDwvaGVhZD4KICA8Ym9keT4KICAgIDxoZWFkZXI+CiAgICAgIDxkaXYgY2xhc3M9Im1lbnUgYWN0aXZlIj4KICAgICAgICA8aDE+ZGF0YXVyaSBpbmZvPC9oMT4KICAgICAgICA8aDI+CiAgICAgICAgICA8YSBocmVmPSIjZGV2cyI+ZGF0YXVyaSBmb3IgZGV2czwvYT4KICAgICAgICA8L2gyPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibWVudSI+CiAgICAgICAgPGgxPmRhdGF1cmkgZm9yIGRldnM8L2gxPgogICAgICAgIDxoMj4KICAgICAgICAgIDxhIGhyZWY9IiI+ZGF0YXVyaSBpbmZvPC9hPgogICAgICAgIDwvaDI+CiAgICAgIDwvZGl2PgogICAgPC9oZWFkZXI+CiAgICA8bWFpbj4KICAgICAgPGRpdiBjbGFzcz0iY29udGVudCBhY3RpdmUiPgogICAgICAgIDxwPgogICAgICAgIFdoYXQgaXMgZGF0YXVyaSBhcHBsaWNhdGlvbj8gQXBwcyBob3N0ZWQgYXMgZGF0YXVyaXMgYXJlIGJhc2ljYWxseSBwb3J0YWJsZSB3ZWIgYXBwcyB0aGF0IHdvcmsgd2l0aG91dCBodHRwIHNlcnZlci4KICAgICAgICBJZiB5b3Ugc2VlIHRoaXMgcGFnZSwgeW91IHByb2JhYmx5IGFscmVhZHkga25vdyBob3cgZGF0YXVyaSBhcHBzIHdvcmsuIFlvdSBqdXN0IGNvcHktcGFzdGUgdGhlIGxpbmsgYW5kIGFjY2VzcyB0aGUgYXBwLgogICAgICAgIEhlcmUgYXJlIHNvbWUgZGF0YXVyaSBhcHBzLgogICAgICAgIDwvcD4KICAgICAgICA8aDI+d2lyZWQ8L2gyPgogICAgICAgIDxwPkFub24gYXBwcm92ZWQgcG93IGJhc2VkIG5vc3RyIGNsaWVudDwvcD4KICAgICAgICA8cCBjbGFzcz0iZGF0YSI+ZGF0YTp0ZXh0L2h0bWw7YmFzZTY0LFBDRmtiMk4wZVhCbElHaDBiV3crUEdoMGJXd2diR0Z1WnowaVpXNGlQanhvWldGa1BqeHRaWFJoSUdOb1lYSnpaWFE5SW5WMFppMDRJaTgrUEcxbGRHRWdibUZ0WlQwaWRtbGxkM0J2Y25RaUlHTnZiblJsYm5ROUluZHBaSFJvUFdSbGRtbGpaUzEzYVdSMGFDeHBibWwwYVdGc0xYTmpZV3hsUFRFaUx6NDhiV1YwWVNCdVlXMWxQU0owYUdWdFpTMWpiMnh2Y2lJZ1kyOXVkR1Z1ZEQwaUl6QXdNREF3TUNJdlBqeHRaWFJoSUc1aGJXVTlJbTF2WW1sc1pTMTNaV0l0WVhCd0xXTmhjR0ZpYkdVaUlHTnZiblJsYm5ROUlubGxjeUl2UGp4dFpYUmhJRzVoYldVOUltRndjR3hsTFhSdmRXTm9MV1oxYkd4elkzSmxaVzRpSUdOdmJuUmxiblE5SW5sbGN5SXZQanh0WlhSaElHNWhiV1U5SW1Gd2NHeGxMVzF2WW1sc1pTMTNaV0l0WVhCd0xYUnBkR3hsSWlCamIyNTBaVzUwUFNKRmVIQnZJaTgrUEcxbGRHRWdibUZ0WlQwaVlYQndiR1V0Ylc5aWFXeGxMWGRsWWkxaGNIQXRZMkZ3WVdKc1pTSWdZMjl1ZEdWdWREMGllV1Z6SWk4K1BHMWxkR0VnYm1GdFpUMGlZWEJ3YkdVdGJXOWlhV3hsTFhkbFlpMWhjSEF0YzNSaGRIVnpMV0poY2kxemRIbHNaU0lnWTI5dWRHVnVkRDBpWkdWbVlYVnNkQ0l2UGp4dFpYUmhJRzVoYldVOUltUmxjMk55YVhCMGFXOXVJaUJqYjI1MFpXNTBQU0pVYUdVZ1YybHlaV1FpTHo0OGRHbDBiR1UrVkdobElGZHBjbVZrUEM5MGFYUnNaVDQ4TDJobFlXUStQR0p2WkhrK1BHNXZjMk55YVhCMFBsbHZkU0J1WldWa0lIUnZJR1Z1WVdKc1pTQktZWFpoVTJOeWFYQjBJSFJ2SUhKMWJpQjBhR2x6SUdGd2NDNDhMMjV2YzJOeWFYQjBQanhrYVhZZ2FXUTlJbkp2YjNRaVBqd3ZaR2wyUGp4elkzSnBjSFErQ2loaGMzbHVZeUJtZFc1amRHbHZiaWdwZXdvZ0lHRnplVzVqSUdaMWJtTjBhVzl1SUdSblpYUW9hV1FzSUhKbGJHRjVLWHNLSUNBZ0lISmxkSFZ5YmlCdVpYY2dVSEp2YldselpTZ29jbVZ6YjJ4MlpTa2dQVDRnZXdvZ0lDQWdJQ0JqYjI1emRDQnpiMk5yWlhRZ1BTQnVaWGNnVjJWaVUyOWphMlYwS0hKbGJHRjVLUW9nSUNBZ0lDQnNaWFFnWm1sc1pWOWtZWFJoSUQwZ1cxMEtJQ0FnSUNBZ2JHVjBJR1pwYkdWcFpITWdQU0JiWFFvS0lDQWdJQ0FnYzI5amEyVjBMbTl1YjNCbGJpQTlJR1oxYm1OMGFXOXVLQ2w3Q2lBZ0lDQWdJQ0FnYzI5amEyVjBMbk5sYm1Rb1NsTlBUaTV6ZEhKcGJtZHBabmtvV3lKU1JWRWlMQ0FpWm1sc1pXbGtjeUlzSUhzaWFXUnpJam9nVzJsa1hYMWRLU2tLSUNBZ0lDQWdmUW9LSUNBZ0lDQWdjMjlqYTJWMExtOXViV1Z6YzJGblpTQTlJR0Z6ZVc1aklHWjFibU4wYVc5dUtHVXBld29nSUNBZ0lDQWdJR052Ym5OMElHUmhkR0VnUFNCS1UwOU9MbkJoY25ObEtHVXVaR0YwWVNrS0NpQWdJQ0FnSUNBZ2FXWW9aR0YwWVZzd1hTQTlQVDBnSWtWV1JVNVVJaUFtSmlCa1lYUmhXekZkSUQwOVBTQWlabWxzWldsa2N5SXBld29nSUNBZ0lDQWdJQ0FnWm1sc1pXbGtjeTV3ZFhOb0tDNHVMa3BUVDA0dWNHRnljMlVvWkdGMFlWc3lYUzVqYjI1MFpXNTBLUzVtYVd4bGFXUnpLUW9nSUNBZ0lDQWdJQ0FnYzI5amEyVjBMbk5sYm1Rb1NsTlBUaTV6ZEhKcGJtZHBabmtvV3lKU1JWRWlMQ0FpY0dGeWRITWlMQ0I3SW1sa2N5STZJR1pwYkdWcFpITXNJQ0pzYVcxcGRDSTZJRE13TURCOVhTa3BDaUFnSUNBZ0lDQWdmUW9nSUNBZ0lDQWdJR1ZzYzJVZ2FXWW9aR0YwWVZzd1hTQTlQVDBnSWtWV1JVNVVJaUFtSmlCa1lYUmhXekZkSUQwOVBTQWljR0Z5ZEhNaUtYc0tJQ0FnSUNBZ0lDQWdJR052Ym5OMElHMWhkR05vSUQwZ1pHRjBZVnN5WFM1amIyNTBaVzUwTG0xaGRHTm9LQzllY0dGeWRDaGNaSHN4TERSOUtUc29YR1I3TVN3MGZTazdXMkV0ZWpBdE9WMHJPeThwQ2dvZ0lDQWdJQ0FnSUNBZ2FXWW9iV0YwWTJncGV3b2dJQ0FnSUNBZ0lDQWdJQ0JqYjI1emRDQndZWEowWDJSaGRHRWdQU0JrWVhSaFd6SmRMbU52Ym5SbGJuUXVjM1ZpYzNSeUtHMWhkR05vV3pCZExteGxibWQwYUNrS0lDQWdJQ0FnSUNBZ0lDQWdabWxzWlY5a1lYUmhMbkIxYzJnb1czQmhjbk5sU1c1MEtHMWhkR05vV3pGZExDQXhNQ2tzSUhCaGNuUmZaR0YwWVYwcENpQWdJQ0FnSUNBZ0lDQjlaV3h6WlhzS0lDQWdJQ0FnSUNBZ0lDQWdabWxzWlY5a1lYUmhMbkIxYzJnb1d6RXNJR1JoZEdGYk1sMHVZMjl1ZEdWdWRGMHBDaUFnSUNBZ0lDQWdJQ0I5Q2dvZ0lDQWdJQ0FnSUNBZ2FXWW9abWxzWlY5a1lYUmhMbXhsYm1kMGFDQTlQVDBnWm1sc1pXbGtjeTVzWlc1bmRHZ3Bld29nSUNBZ0lDQWdJQ0FnSUNCbWFXeGxYMlJoZEdFZ1BTQm1hV3hsWDJSaGRHRXVjMjl5ZENnb1lTd2dZaWtnUFQ0Z1lWc3dYU0F0SUdKYk1GMHBMbTFoY0NobElEMCtJR1ZiTVYwcENpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElHUmhkR0YxY21rZ1BTQWlaR0YwWVRvaUlDc2dabWxzWlY5a1lYUmhMbXB2YVc0b0lpSXBDaUFnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR0pzYjJJZ1BTQmhkMkZwZENBb1lYZGhhWFFnWm1WMFkyZ29aR0YwWVhWeWFTa3BMbUpzYjJJb0tRb2dJQ0FnSUNBZ0lDQWdJQ0J5WlhOdmJIWmxLR0pzYjJJcENpQWdJQ0FnSUNBZ0lDQjlDaUFnSUNBZ0lDQWdmUW9nSUNBZ0lDQjlDaUFnSUNCOUtRb2dJSDBLQ2lBZ1kyOXVjM1FnZDI5eWEyVnlYM052ZFhKalpTQTlJR0YzWVdsMElHUm5aWFFvSW1abFpXTmxZVEF4Wm1VMlpEa3lNR1U1WmpVMk0yVTVPV1UxTWpkaE1tRTFNalZsT0RRd09UVXlOMlZpTWpjM1l6azBaREpsT1RBM016UmtZelJqTlRBaUxDQWlkM056T2k4dmJtOXpMbXh2YkNJcENpQWdZMjl1YzNRZ2QyOXlhMlZ5WHpVNU1sOTFjbXdnUFNCVlVrd3VZM0psWVhSbFQySnFaV04wVlZKTUtHRjNZV2wwSUdSblpYUW9JbVpsTUdWaE5qQTJPREJpTVRZd1lqWXlOMk0wWW1Zek5UaGxNRGsxWVdaaE1UY3hOV0poTVRsaE5XSTVZemt3T1RZek1HUTFNbVF6WlRRek1qUTNNbU1pTENBaWQzTnpPaTh2Ym05ekxteHZiQ0lwS1FvZ0lHTnZibk4wSUdsamIyNWZjRzVuWDNWeWJDQTlJRlZTVEM1amNtVmhkR1ZQWW1wbFkzUlZVa3dvWVhkaGFYUWdaR2RsZENnaU1EVmtaVE0wWldFNU1Ea3lNbVZsT1RReE1EVXpZelF6WWpVd01HUmhZVEUwT0RSbE1XWTNNek0yTTJaak5XUmhOekl5TXpSaU5EQXpZamszTnpNM09DSXNJQ0ozYzNNNkx5OXViM011Ykc5c0lpa3BDaUFnWTI5dWMzUWdiV0ZwYmw5cWMxOXRZWEJmZFhKc0lEMGdWVkpNTG1OeVpXRjBaVTlpYW1WamRGVlNUQ2hoZDJGcGRDQmtaMlYwS0NJMU5XVmtORGRpTWprME56SmtaVEU0WTJJM01XUTBNMk5qT0dObVptVTNOVGN3TnpKbU5EQTNZMlpsT0dObFlqUmtNRFF5TkRkaVpHVTBORGMxTTJWbElpd2dJbmR6Y3pvdkwyNXZjeTVzYjJ3aUtTa0tDaUFnYkdWMElIZHZjbXRsY2w5emIzVnlZMlZmYzNSeUlEMGdZWGRoYVhRZ2QyOXlhMlZ5WDNOdmRYSmpaUzUwWlhoMEtDa0tJQ0IzYjNKclpYSmZjMjkxY21ObFgzTjBjaUE5SUhkdmNtdGxjbDl6YjNWeVkyVmZjM1J5TG5KbGNHeGhZMlVvSjJsdGNHOXlkRk5qY21sd2RITW9kQzV3SzNRdWRTaHlLU2tuTENBbmFXMXdiM0owVTJOeWFYQjBjeWdpSnlBcklIZHZjbXRsY2w4MU9USmZkWEpzSUNzZ0p5SXBKeWtLSUNCamIyNXpkQ0IzYjNKclpYSmZkWEpzSUQwZ1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaHVaWGNnUW14dllpaGJkMjl5YTJWeVgzTnZkWEpqWlY5emRISmRMQ0I3ZEhsd1pUb2dJblJsZUhRdmFtRjJZWE5qY21sd2RDSjlLU2tLQ2lBZ1kyOXVjM1FnYjNKcFoybHVZV3hYYjNKclpYSkRiMjV6ZEhKMVkzUnZjaUE5SUZkdmNtdGxjanNLQ2lBZ1YyOXlhMlZ5SUQwZ1puVnVZM1JwYjI0b2RYSnNLU0I3Q2lBZ0lDQjFjbXdnUFNCM2IzSnJaWEpmZFhKc0NpQWdJQ0J5WlhSMWNtNGdibVYzSUc5eWFXZHBibUZzVjI5eWEyVnlRMjl1YzNSeWRXTjBiM0lvZFhKc0tUc0tJQ0I5Q2dvZ0lGVlNUQ0E5SUdOc1lYTnpJRTE1VlZKTUlHVjRkR1Z1WkhNZ1ZWSk1JSHNLSUNBZ0lHTnZibk4wY25WamRHOXlLR2x1Y0hWMEtTQjdDaUFnSUNBZ0lITjFjR1Z5S0dsdWNIVjBMbWx1WkdWNFQyWW9JaThpS1NBOVBUMGdNQ0FtSmlBb2JHOWpZWFJwYjI0dWNISnZkRzlqYjJ3Z0t5QnNiMk5oZEdsdmJpNXdZWFJvYm1GdFpTQXJJR2x1Y0hWMEtTQjhmQ0JwYm5CMWRDazdDaUFnSUNCOUNpQWdmUW9LSUNCa1lYUmhURzlqWVd4VGRHOXlZV2RsSUQwZ2V3b2dJQ0FnWjJWMFNYUmxiVG9nWm5WdVkzUnBiMjRvS1h0OUxBb2dJQ0FnYzJWMFNYUmxiVG9nWm5WdVkzUnBiMjRvS1h0OUNpQWdmUW9LSUNCamIyNXpkQ0J6WTNKcGNIUnpJRDBnV3dvZ0lDQWdJakUxTkROaE1EY3dZVFF5WlRobE1HTXdOVGcyTVRnME1HSmtaVGRsTldJMk9URmpOR0kxWkdWak5qWXlOelExT0RVeVl6SXlPRE5qWm1WbVpEaGpZVFVpQ2lBZ1hRb0tJQ0JqYjI1emRDQnpkSGxzWlhNZ1BTQmJDaUFnSUNBaU5qazVOakEzTnpSalpUWmtabUU0TXpGaE16TXdPRGN6TkRFeU5XUTRNR1JsTWpZNVlUZzBaalU1T0RnNFlUZGtNekV5TVRWbFlURmhZelUxTVRFMU1pSUtJQ0JkQ2dvZ0lHTnZibk4wSUhOamNtbHdkRjlwWkNBOUlITmpjbWx3ZEhOYk1GMEtJQ0JqYjI1emRDQnpZM0pwY0hSZmMyOTFjbU5sSUQwZ1lYZGhhWFFnWkdkbGRDaHpZM0pwY0hSZmFXUXNJQ0ozYzNNNkx5OXViM011Ykc5c0lpa0tJQ0JzWlhRZ2MyTnlhWEIwWDNOdmRYSmpaVjl6ZEhJZ1BTQmhkMkZwZENCelkzSnBjSFJmYzI5MWNtTmxMblJsZUhRb0tRb2dJSE5qY21sd2RGOXpiM1Z5WTJWZmMzUnlJRDBnYzJOeWFYQjBYM052ZFhKalpWOXpkSEl1Y21Wd2JHRmpaU2dpTDJsamIyNHVjRzVuSWl3Z2FXTnZibDl3Ym1kZmRYSnNLUW9nSUhOamNtbHdkRjl6YjNWeVkyVmZjM1J5SUQwZ2MyTnlhWEIwWDNOdmRYSmpaVjl6ZEhJdWNtVndiR0ZqWlNndktITnZkWEpqWlUxaGNIQnBibWRWVWt3OUtTaHRZV2x1WEM1YllTMTZNQzA1WFhzNGZWd3Vhbk5jTG0xaGNDa3ZMQ0FpSkRGb2RIUndPaTh2Ykc5allXeG9iM04wT2pnd01EQXZKRElpS1FvZ0lITmpjbWx3ZEY5emIzVnlZMlZmYzNSeUlEMGdjMk55YVhCMFgzTnZkWEpqWlY5emRISXVjbVZ3YkdGalpVRnNiQ2dpYkc5allXeFRkRzl5WVdkbElpd2dJbVJoZEdGTWIyTmhiRk4wYjNKaFoyVWlLUW9LSUNCamIyNXpkQ0J6WTNKcGNIUmZaV3dnUFNCa2IyTjFiV1Z1ZEM1amNtVmhkR1ZGYkdWdFpXNTBLQ0p6WTNKcGNIUWlLUW9nSUhOamNtbHdkRjlsYkM1emNtTWdQU0JWVWt3dVkzSmxZWFJsVDJKcVpXTjBWVkpNS0c1bGR5QkNiRzlpS0Z0elkzSnBjSFJmYzI5MWNtTmxYM04wY2wwc0lIdDBlWEJsT2lBaWRHVjRkQzlxWVhaaGMyTnlhWEIwSW4wcEtRb2dJR052Ym5OdmJHVXViRzluS0NKelkzSnBjSFJmWld3dWMzSmpJaXdnYzJOeWFYQjBYMlZzTG5OeVl5a0tJQ0JrYjJOMWJXVnVkQzVpYjJSNUxtRndjR1Z1WkNoelkzSnBjSFJmWld3cENnb2dJR1p2Y2loc1pYUWdjM1I1YkdWZmFXUWdiMllnYzNSNWJHVnpLWHNLSUNBZ0lHTnZibk4wSUhOMGVXeGxYM052ZFhKalpTQTlJR0YzWVdsMElHUm5aWFFvYzNSNWJHVmZhV1FzSUNKM2MzTTZMeTl1YjNNdWJHOXNJaWtLSUNBZ0lHTnZibk4wSUhOMGVXeGxYMlZzSUQwZ1pHOWpkVzFsYm5RdVkzSmxZWFJsUld4bGJXVnVkQ2dpYkdsdWF5SXBDaUFnSUNCemRIbHNaVjlsYkM1eVpXd2dQU0FpYzNSNWJHVnphR1ZsZENJS0lDQWdJSE4wZVd4bFgyVnNMbWh5WldZZ1BTQlZVa3d1WTNKbFlYUmxUMkpxWldOMFZWSk1LR0YzWVdsMElITjBlV3hsWDNOdmRYSmpaU2tLSUNBZ0lHUnZZM1Z0Wlc1MExtSnZaSGt1WVhCd1pXNWtLSE4wZVd4bFgyVnNLUW9nSUgwS2ZTa29LUW84TDNOamNtbHdkRDRLUEM5aWIyUjVQand2YUhSdGJENEs8L3A+CgogICAgICAgIDxoMj5vdXJjaGFuPC9oMj4KICAgICAgICA8cD5Bbm9uIGFwcHJvdmVkIGltYWdlIGJvYXJkPC9wPgogICAgICAgIDxwIGNsYXNzPSJkYXRhIj5kYXRhOnRleHQvaHRtbDtyPW5vcy5sb2w7az0yYjhkNTBmY2M5NzRmZmI2NTJjMGFiMzNlZGViYjZhOWNlNzJjZDE1NDU5MTk2OTU5MmJjOGI2MDdhNGVhMWYyO2Y9b3VyY2hhbjtiYXNlNjQsUEhOamNtbHdkRDRLS0NncElEMCtJSHNLSUNCamIyNXpkQ0J5SUQwZ0luZHpjem92THlJZ0t5QnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Y2owb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9nSUdOdmJuTjBJR3NnUFNCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdhejBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHWWdQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N1pqMG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvS0lDQmtiMk4xYldWdWRDNTNjbWwwWlNnaVBIQStZMjl1Ym1WamRHbHVaeUIwYnlBaUlDc2djaUFySUNJOEwzQStJaWtLSUNCamIyNXpkQ0J6SUQwZ2JtVjNJRmRsWWxOdlkydGxkQ2h5S1FvS0lDQnpMbTl1YjNCbGJpQTlJQ2dwSUQwK0lIc0tJQ0FnSUhNdWMyVnVaQ2duV3lKU1JWRWlMQ0FpY1NJc0lIc2lZWFYwYUc5eWN5STZJRnNpSnlBcklHc2dLeUFuSWwwc0lDSWpaQ0k2SUZzaUp5QXJJR1lnS3lBbklsMTlYU2NwQ2lBZ2ZRb0tJQ0J6TG05dWJXVnpjMkZuWlNBOUlHRnplVzVqSUNobEtTQTlQaUI3Q2lBZ0lDQnpMbU5zYjNObEtDa0tJQ0FnSUdSdlkzVnRaVzUwTG5keWFYUmxLRXBUVDA0dWNHRnljMlVvWlM1a1lYUmhLVnN5WFM1amIyNTBaVzUwS1FvS0lDQWdJSGRvYVd4bEtDRjNhVzVrYjNjdWJHOWhaR1ZrS1hzS0lDQWdJQ0FnWVhkaGFYUWdibVYzSUZCeWIyMXBjMlVvWXlBOVBpQnpaWFJVYVcxbGIzVjBLR01zSURFd0tTa0tJQ0FnSUgwS0NpQWdJQ0JrYVhOd1lYUmphRVYyWlc1MEtHNWxkeUJEZFhOMGIyMUZkbVZ1ZENnaWJHOWhaQ0lwS1FvZ0lIMEtmU2tvS1FvOEwzTmpjbWx3ZEQ0SzwvcD4KCiAgICAgICAgPGgyPmZpbGVwdWJsaXNoPC9oMj4KICAgICAgICA8cD5VcGxvYWQgZmlsZXM8L3A+CiAgICAgICAgPHAgY2xhc3M9ImRhdGEiPmRhdGE6dGV4dC9odG1sO3I9bm9zLmxvbDtrPTAxYjBiMTk2MGZmZTg5ZWFhMTFlNjdjYTk5OWQ4MzJlNTUzNTBkZDE3YzBlYTllZWVlMWQ1ZDZhYzZmMGZkZDQ7Zj1maWxlcHVibGlzaC5odG1sO2Jhc2U2NCxQSE5qY21sd2RENEtLQ2dwSUQwK0lIc0tJQ0JqYjI1emRDQnlJRDBnSW5kemN6b3ZMeUlnS3lCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdjajBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHc2dQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N2F6MG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvZ0lHTnZibk4wSUdZZ1BTQnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Wmowb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9LSUNCa2IyTjFiV1Z1ZEM1M2NtbDBaU2dpUEhBK1kyOXVibVZqZEdsdVp5QjBieUFpSUNzZ2NpQXJJQ0k4TDNBK0lpa0tJQ0JqYjI1emRDQnpJRDBnYm1WM0lGZGxZbE52WTJ0bGRDaHlLUW9LSUNCekxtOXViM0JsYmlBOUlDZ3BJRDArSUhzS0lDQWdJSE11YzJWdVpDZ25XeUpTUlZFaUxDQWljU0lzSUhzaVlYVjBhRzl5Y3lJNklGc2lKeUFySUdzZ0t5QW5JbDBzSUNJalpDSTZJRnNpSnlBcklHWWdLeUFuSWwxOVhTY3BDaUFnZlFvS0lDQnpMbTl1YldWemMyRm5aU0E5SUdGemVXNWpJQ2hsS1NBOVBpQjdDaUFnSUNCekxtTnNiM05sS0NrS0lDQWdJR1J2WTNWdFpXNTBMbmR5YVhSbEtFcFRUMDR1Y0dGeWMyVW9aUzVrWVhSaEtWc3lYUzVqYjI1MFpXNTBLUW9LSUNBZ0lIZG9hV3hsS0NGM2FXNWtiM2N1Ykc5aFpHVmtLWHNLSUNBZ0lDQWdZWGRoYVhRZ2JtVjNJRkJ5YjIxcGMyVW9ZeUE5UGlCelpYUlVhVzFsYjNWMEtHTXNJREV3S1NrS0lDQWdJSDBLQ2lBZ0lDQmthWE53WVhSamFFVjJaVzUwS0c1bGR5QkRkWE4wYjIxRmRtVnVkQ2dpYkc5aFpDSXBLUW9nSUgwS2ZTa29LUW84TDNOamNtbHdkRDRLPC9wPgoKICAgICAgICA8aDI+ZmlsZWxvYWRlcjwvaDI+CiAgICAgICAgPHA+RG93bmxvYWQvdmlldyBmaWxlczwvcD4KICAgICAgICA8cCBjbGFzcz0iZGF0YSI+ZGF0YTp0ZXh0L2h0bWw7cj1ub3MubG9sO2s9MDFiMGIxOTYwZmZlODllYWExMWU2N2NhOTk5ZDgzMmU1NTM1MGRkMTdjMGVhOWVlZWUxZDVkNmFjNmYwZmRkNDtmPWZpbGVsb2FkZXIuaHRtbDtiYXNlNjQsUEhOamNtbHdkRDRLS0NncElEMCtJSHNLSUNCamIyNXpkQ0J5SUQwZ0luZHpjem92THlJZ0t5QnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Y2owb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9nSUdOdmJuTjBJR3NnUFNCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdhejBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHWWdQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N1pqMG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvS0lDQmtiMk4xYldWdWRDNTNjbWwwWlNnaVBIQStZMjl1Ym1WamRHbHVaeUIwYnlBaUlDc2djaUFySUNJOEwzQStJaWtLSUNCamIyNXpkQ0J6SUQwZ2JtVjNJRmRsWWxOdlkydGxkQ2h5S1FvS0lDQnpMbTl1YjNCbGJpQTlJQ2dwSUQwK0lIc0tJQ0FnSUhNdWMyVnVaQ2duV3lKU1JWRWlMQ0FpY1NJc0lIc2lZWFYwYUc5eWN5STZJRnNpSnlBcklHc2dLeUFuSWwwc0lDSWpaQ0k2SUZzaUp5QXJJR1lnS3lBbklsMTlYU2NwQ2lBZ2ZRb0tJQ0J6TG05dWJXVnpjMkZuWlNBOUlHRnplVzVqSUNobEtTQTlQaUI3Q2lBZ0lDQnpMbU5zYjNObEtDa0tJQ0FnSUdSdlkzVnRaVzUwTG5keWFYUmxLRXBUVDA0dWNHRnljMlVvWlM1a1lYUmhLVnN5WFM1amIyNTBaVzUwS1FvS0lDQWdJSGRvYVd4bEtDRjNhVzVrYjNjdWJHOWhaR1ZrS1hzS0lDQWdJQ0FnWVhkaGFYUWdibVYzSUZCeWIyMXBjMlVvWXlBOVBpQnpaWFJVYVcxbGIzVjBLR01zSURFd0tTa0tJQ0FnSUgwS0NpQWdJQ0JrYVhOd1lYUmphRVYyWlc1MEtHNWxkeUJEZFhOMGIyMUZkbVZ1ZENnaWJHOWhaQ0lwS1FvZ0lIMEtmU2tvS1FvOEwzTmpjbWx3ZEQ0SzwvcD4KCiAgICAgICAgPGgyPnZpZGVvIGNsaXAgY3JlYXRvcjwvaDI+CiAgICAgICAgPHA+Q3JlYXRlIGFuZCB1cGxvYWQgMSBzZWNvbmQgdmlkZW8gY2xpcHM8L3A+CiAgICAgICAgPHAgY2xhc3M9ImRhdGEiPmRhdGE6dGV4dC9odG1sO2Jhc2U2NCxQQ0ZFVDBOVVdWQkZJR2gwYld3K0NqeG9kRzFzUGdvZ0lEeG9aV0ZrUGdvZ0lDQWdQSFJwZEd4bFBuWnBaR1Z2SUdOc2FYQWdZM0psWVhSdmNqd3ZkR2wwYkdVK0NpQWdJQ0E4YzNSNWJHVStDaUFnSUNCaWIyUjVJSHNLSUNBZ0lDQWdiV0Z5WjJsdU9pQXhaVzA3Q2lBZ0lDQjlDaUFnSUNCb01TQjdDaUFnSUNBZ0lHMWhjbWRwYmkxMGIzQTZJREE3Q2lBZ0lDQWdJR1p2Ym5RdGMybDZaVG9nTVM0MVpXMDdDaUFnSUNCOUNpQWdJQ0FqYkc5bklIc0tJQ0FnSUNBZ2IzWmxjbVpzYjNjNklHRjFkRzg3Q2lBZ0lDQWdJSEJ2YzJsMGFXOXVPaUJoWW5OdmJIVjBaVHNLSUNBZ0lDQWdZbTkwZEc5dE9pQXhaVzA3Q2lBZ0lDQWdJSFJ2Y0RvZ01URmxiVHNLSUNBZ0lDQWdZbTl5WkdWeU9pQXVNMlZ0SUhOdmJHbGtJQ00yTmpZN0NpQWdJQ0FnSUdKdmNtUmxjaTF5WVdScGRYTTZJQzR6WlcwN0NpQWdJQ0FnSUhKcFoyaDBPaUF4WlcwN0NpQWdJQ0FnSUd4bFpuUTZJREZsYlRzS0lDQWdJQ0FnY0dGa1pHbHVaem9nTGpWbGJUc0tJQ0FnSUNBZ1ltRmphMmR5YjNWdVpEb2dJMlZsWlRzS0lDQWdJSDBLSUNBZ0lDTndjbTluY21WemN5QjdDaUFnSUNBZ0lHSmhZMnRuY205MWJtUTZJQ05rWkdRN0NpQWdJQ0FnSUdKdmNtUmxjaTF5WVdScGRYTTZJQzR6WlcwN0NpQWdJQ0I5Q2lBZ0lDQWpjSEp2WjNKbGMzTmlZWElnZXdvZ0lDQWdJQ0JvWldsbmFIUTZJREV1TTJWdE93b2dJQ0FnSUNCaVlXTnJaM0p2ZFc1a09pQmliSFZsT3dvZ0lDQWdJQ0IzYVdSMGFEb2dNQ1U3Q2lBZ0lDQWdJR0p2Y21SbGNpMXlZV1JwZFhNNklDNDBaVzA3Q2lBZ0lDQjlDaUFnSUNBamJHOW5JRDRnWVNCN0NpQWdJQ0FnSUcxaGNtZHBiaTFpYjNSMGIyMDZJREZsYlRzS0lDQWdJQ0FnWkdsemNHeGhlVG9nWW14dlkyczdDaUFnSUNCOUNpQWdJQ0J3SUhzS0lDQWdJQ0FnYldGeVoybHVMWFJ2Y0RvZ01Ec0tJQ0FnSUNBZ2JXRjRMV2hsYVdkb2REb2dOMlZ0T3dvZ0lDQWdJQ0J2ZG1WeVpteHZkem9nYzJOeWIyeHNPd29nSUNBZ2ZRb2dJQ0FnZG1sa1pXOGdld29nSUNBZ0lDQmthWE53YkdGNU9pQnViMjVsT3dvZ0lDQWdJQ0I2TFdsdVpHVjRPaUF4T3dvZ0lDQWdmUW9nSUNBZ0kyTmhiblpoY3l3S0lDQWdJSFpwWkdWdklIc0tJQ0FnSUNBZ2NHOXphWFJwYjI0NklHRmljMjlzZFhSbE93b2dJQ0FnSUNCMGIzQTZJREZsYlRzS0lDQWdJQ0FnY21sbmFIUTZJREZsYlRzS0lDQWdJQ0FnZDJsa2RHZzZJREV3WlcwN0NpQWdJQ0FnSUdobGFXZG9kRG9nTm1WdE93b2dJQ0FnZlFvZ0lDQWdQQzl6ZEhsc1pUNEtJQ0E4TDJobFlXUStDaUFnUEdKdlpIaytDaUFnSUNBOGFERStkbWxrWlc4Z1kyeHBjQ0JqY21WaGRHOXlQQzlvTVQ0S0lDQWdJRHhtYjNKdElHbGtQU0ptYjNKdElqNEtJQ0FnSUNBZ1BIQStDaUFnSUNBZ0lDQWdQR2x1Y0hWMElHbGtQU0ptYVd4bElpQjBlWEJsUFNKbWFXeGxJaTgrQ2lBZ0lDQWdJRHd2Y0Q0S0lDQWdJQ0FnUEhBK0NpQWdJQ0FnSUNBZ1BHbHVjSFYwSUdsa1BTSnpkV0p0YVhRaUlIUjVjR1U5SW5OMVltMXBkQ0lnZG1Gc2RXVTlJbVZ1WTI5a1pTSXZQZ29nSUNBZ0lDQThMM0ErQ2lBZ0lDQThMMlp2Y20wK0NpQWdJQ0E4ZG1sa1pXOGdhV1E5SW5acFpHVnZJajQ4TDNacFpHVnZQZ29nSUNBZ1BIWnBaR1Z2SUdsa1BTSjJhV1JsYnpJaUlHTnZiblJ5YjJ4eklHeHZiM0E5SWpFaVBqd3ZkbWxrWlc4K0NpQWdJQ0E4WTJGdWRtRnpJR2xrUFNKallXNTJZWE1pUGp3dlkyRnVkbUZ6UGdvZ0lDQWdQR1JwZGlCcFpEMGljSEp2WjNKbGMzTWlQZ29nSUNBZ0lDQThaR2wySUdsa1BTSndjbTluY21WemMySmhjaUkrUEM5a2FYWStDaUFnSUNBOEwyUnBkajRLSUNBZ0lEeGthWFlnYVdROUlteHZaeUkrUEdScGRqNEtJQ0FnSUR4elkzSnBjSFFnZEhsd1pUMGliVzlrZFd4bElqNEtJQ0FnSUdOdmJuTjBJR05oYm5aaGN5QTlJR1J2WTNWdFpXNTBMbWRsZEVWc1pXMWxiblJDZVVsa0tDSmpZVzUyWVhNaUtRb2dJQ0FnWTI5dWMzUWdZM1I0SUQwZ1kyRnVkbUZ6TG1kbGRFTnZiblJsZUhRb0p6SmtKeWtLSUNBZ0lHTnZibk4wSUd4dlp5QTlJR1J2WTNWdFpXNTBMbWRsZEVWc1pXMWxiblJDZVVsa0tDSnNiMmNpS1FvZ0lDQWdZMjl1YzNRZ2RtbGtaVzhnUFNCa2IyTjFiV1Z1ZEM1blpYUkZiR1Z0Wlc1MFFubEpaQ2dpZG1sa1pXOGlLUW9nSUNBZ1kyOXVjM1FnZG1sa1pXOHlJRDBnWkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9JblpwWkdWdk1pSXBDaUFnSUNCamIyNXpkQ0J3Y205bmNtVnpjMkpoY2lBOUlHUnZZM1Z0Wlc1MExtZGxkRVZzWlcxbGJuUkNlVWxrS0NKd2NtOW5jbVZ6YzJKaGNpSXBDaUFnSUNCc1pYUWdabWxzWlhNZ1BTQnVkV3hzQ2dvZ0lDQWdZMjl1YzNRZ1puSmhiV1ZmWkhWeVlYUnBiMjRnUFNBeEx6TXdDaUFnSUNCamIyNXpkQ0JsZUhSeVlXTjBYMlp5WVcxbFgyTnZkVzUwSUQwZ016QXZMekVnTHlCbWNtRnRaVjlrZFhKaGRHbHZiZ29nSUNBZ2JHVjBJSFJwYldVZ1BTQXhOUW9LSUNBZ0lHTnZibk4wSUdKMVptWmxjaUE5SUdGM1lXbDBJR1psZEdOb0tBb2dJQ0FnSUNBaWFIUjBjSE02THk5MWJuQnJaeTVqYjIwdmQyVmliUzEzWVhOdFFEQXVOQzR4TDJScGMzUXZkMlZpYlMxM2IzSnJaWEl1YW5NaUNpQWdJQ0FwTG5Sb1pXNG9jaUE5UGlCeUxtRnljbUY1UW5WbVptVnlLQ2twQ2dvZ0lDQWdZMjl1YzNRZ2QyOXlhMlZ5SUQwZ2JtVjNJRmR2Y210bGNpZ0tJQ0FnSUNBZ1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaHVaWGNnUW14dllpaGJZblZtWm1WeVhTd2dleUIwZVhCbE9pQWlkR1Y0ZEM5cVlYWmhjMk55YVhCMElpQjlLU2tLSUNBZ0lDa0tDaUFnSUNCc1pYUWdaVzVqYjJSbFpGOWtZWFJoSUQwZ1cxMEtJQ0FnSUd4bGRDQnpkR0Z5ZEY5MGFXMWxJRDBnYm5Wc2JBb2dJQ0FnYkdWMElISmxZV1I1SUQwZ1ptRnNjMlVLQ2lBZ0lDQmtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBRbmxKWkNnaVptOXliU0lwTG05dWMzVmliV2wwSUQwZ1puVnVZM1JwYjI0b1pTbDdDaUFnSUNBZ0lHVXVjSEpsZG1WdWRFUmxabUYxYkhRb0tRb2dJQ0FnSUNCMmFXUmxiekl1YzNSNWJHVXVaR2x6Y0d4aGVTQTlJQ0p1YjI1bElqc0tJQ0FnSUNBZ2RtbGtaVzh5TG5CaGRYTmxLQ2tLSUNBZ0lDQWdjSEp2WjNKbGMzTmlZWEl1YzNSNWJHVXVkMmxrZEdnZ1BTQWlNQzQxSlNJS0lDQWdJQ0FnZEdocGN5NXhkV1Z5ZVZObGJHVmpkRzl5UVd4c0tDSnBibkIxZENJcExtWnZja1ZoWTJnb1pXd2dQVDRnWld3dVpHbHpZV0pzWldRZ1BTQjBjblZsS1FvZ0lDQWdJQ0JrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwUW5sSlpDZ2ljM1ZpYldsMElpa3VkbUZzZFdVZ1BTQWlaVzVqYjJScGJtY2lDaUFnSUNBZ0lHWnBiR1Z6SUQwZ1pHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSW1acGJHVWlLUzVtYVd4bGN3b2dJQ0FnSUNCemRHRnlkQ2dwQ2lBZ0lDQjlDZ29nSUNBZ1puVnVZM1JwYjI0Z1lteHZZbFJ2UkdGMFlWVlNUQ2hpYkc5aUxDQmpZV3hzWW1GamF5a2dld29nSUNBZ0lDQnlaWFIxY200Z2JtVjNJRkJ5YjIxcGMyVW9jbVZ6YjJ4MlpTQTlQaUI3Q2lBZ0lDQWdJQ0FnZG1GeUlHRWdQU0J1WlhjZ1JtbHNaVkpsWVdSbGNpZ3BDaUFnSUNBZ0lDQWdZUzV2Ym14dllXUWdQU0JtZFc1amRHbHZiaWhsS1NCN0NpQWdJQ0FnSUNBZ0lDQnlaWE52YkhabEtHVXVkR0Z5WjJWMExuSmxjM1ZzZENrS0lDQWdJQ0FnSUNCOUNpQWdJQ0FnSUNBZ1lTNXlaV0ZrUVhORVlYUmhWVkpNS0dKc2IySXBDaUFnSUNBZ0lIMHBDaUFnSUNCOUNnb2dJQ0FnWm5WdVkzUnBiMjRnYVc1bWJ5aHRjMmNzSUhSNWNHVXBld29nSUNBZ0lDQmpiMjV6ZENCbGJDQTlJR1J2WTNWdFpXNTBMbU55WldGMFpVVnNaVzFsYm5Rb2RIbHdaU0E5UFQwZ01pQW1KaUFpWVNJZ2ZId2dJbkFpS1FvZ0lDQWdJQ0JsYkZzb2RIbHdaU0E5UFQwZ015a2dKaVlnSW1sdWJtVnlTRlJOVENJZ2ZId2dJbWx1Ym1WeVZHVjRkQ0pkSUQwZ2JYTm5DZ29nSUNBZ0lDQnBaaWgwZVhCbEtYc0tJQ0FnSUNBZ0lDQmxiQzVvY21WbUlEMGdiWE5uQ2lBZ0lDQWdJSDBLQ2lBZ0lDQWdJR3h2Wnk1aGNIQmxibVFvWld3cENpQWdJQ0FnSUd4dlp5NXpZM0p2Ykd4VWJ5Z3dMQ0F4WlRZcENpQWdJQ0I5Q2dvZ0lDQWdZWE41Ym1NZ1puVnVZM1JwYjI0Z2NISnZZMlZ6YzE5MmFXUmxieWdwZXdvZ0lDQWdJQ0JzWlhRZ1puSmhiV1ZmWTI5MWJuUWdQU0F3Q2dvZ0lDQWdJQ0IyYVdSbGJ5NXZibk5sWld0bFpDQTlJR1oxYm1OMGFXOXVLR1VwSUhzS0lDQWdJQ0FnSUNCbWNtRnRaVjlqYjNWdWRDc3JDaUFnSUNBZ0lDQWdhVzVtYnlnaVpYaDBjbUZqZENCbWNtRnRaU0FpSUNzZ1puSmhiV1ZmWTI5MWJuUWdLeUFpSUM4Z0lpQXJJR1Y0ZEhKaFkzUmZabkpoYldWZlkyOTFiblFwQ2dvZ0lDQWdJQ0FnSUdOMGVDNWtjbUYzU1cxaFoyVW9kbWxrWlc4c0lEQXNJREFzSUdOaGJuWmhjeTUzYVdSMGFDd2dZMkZ1ZG1GekxtaGxhV2RvZENrN0NpQWdJQ0FnSUNBZ1kyOXVjM1FnYVcxaFoyVkVZWFJoSUQwZ1kzUjRMbWRsZEVsdFlXZGxSR0YwWVNnd0xDQXdMQ0JqWVc1MllYTXVkMmxrZEdnc0lHTmhiblpoY3k1b1pXbG5hSFFwQ2dvZ0lDQWdJQ0FnSUdsbUtHWnlZVzFsWDJOdmRXNTBJRHdnWlhoMGNtRmpkRjltY21GdFpWOWpiM1Z1ZENsN0NpQWdJQ0FnSUNBZ0lDQjBhVzFsSUNzOUlHWnlZVzFsWDJSMWNtRjBhVzl1Q2lBZ0lDQWdJQ0FnSUNCMGFHbHpMbU4xY25KbGJuUlVhVzFsSUQwZ1RXRjBhQzV0YVc0b1RXRjBhQzV0WVhnb01Dd2dLSFJwYldVZ1BDQXdJRDhnZEdocGN5NWtkWEpoZEdsdmJpQTZJREFwSUNzZ2RHbHRaU2tzSUhSb2FYTXVaSFZ5WVhScGIyNHBDaUFnSUNBZ0lDQWdJQ0IzYjNKclpYSXVjRzl6ZEUxbGMzTmhaMlVvYVcxaFoyVkVZWFJoTG1SaGRHRXVZblZtWm1WeUxDQmJhVzFoWjJWRVlYUmhMbVJoZEdFdVluVm1abVZ5WFNrS0lDQWdJQ0FnSUNCOVpXeHpaWHNLSUNBZ0lDQWdJQ0FnSUhkdmNtdGxjaTV3YjNOMFRXVnpjMkZuWlNodWRXeHNLUW9nSUNBZ0lDQWdJSDBLSUNBZ0lDQWdmUW9nSUNBZ2ZRb0tJQ0FnSUdaMWJtTjBhVzl1SUhSdmRHRnNYM1JwYldVb2MzUmhjblFwZXdvZ0lDQWdJQ0J5WlhSMWNtNGdLRzVsZHlCRVlYUmxLQ2t1WjJWMFZHbHRaU2dwSUMwZ2MzUmhjblFwSUM4Z01UQXdNQW9nSUNBZ2ZRb0tJQ0FnSUdaMWJtTjBhVzl1SUdOeVpXRjBaVUoxWm1abGNsVlNUQ2hpZFdabVpYSXNJSFI1Y0dVZ1BTQW5KeWtnZXdvZ0lDQWdJQ0J5WlhSMWNtNGdWVkpNTG1OeVpXRjBaVTlpYW1WamRGVlNUQ2h1WlhjZ1FteHZZaWhiWW5WbVptVnlYU3dnZTNSNWNHVjlLU2s3Q2lBZ0lDQjlDZ29nSUNBZ1lYTjVibU1nWm5WdVkzUnBiMjRnYzJodmQxOWtZWFJoWDNWeWFTaGliRzlpS1hzS0lDQWdJQ0FnYkdWMElHSnNiMkpmZFhKc0lEMGdWVkpNTG1OeVpXRjBaVTlpYW1WamRGVlNUQ2hpYkc5aUtRb0tJQ0FnSUNBZ2FXNW1ieWhoZDJGcGRDQmliRzlpVkc5RVlYUmhWVkpNS0dKc2IySXBLUW9nSUNBZ0lDQnBibVp2S0dKc2IySmZkWEpzTENBeUtRb0tJQ0FnSUNBZ2RtbGtaVzh5TG5OeVl5QTlJR0pzYjJKZmRYSnNDaUFnSUNBZ0lIWnBaR1Z2TWk1emRIbHNaUzVrYVhOd2JHRjVJRDBnSW1Kc2IyTnJJanNLSUNBZ0lDQWdkbWxrWlc4eUxuQnNZWGtvS1FvS0lDQWdJQ0FnY0hKdlozSmxjM05pWVhJdWMzUjViR1V1ZDJsa2RHZ2dQU0FpTVRBd0pTSUtJQ0FnSUNBZ1pHOWpkVzFsYm5RdVoyVjBSV3hsYldWdWRFSjVTV1FvSW1admNtMGlLUzV5WlhObGRDZ3BDaUFnSUNBZ0lHUnZZM1Z0Wlc1MExtZGxkRVZzWlcxbGJuUkNlVWxrS0NKemRXSnRhWFFpS1M1MllXeDFaU0E5SUNKbGJtTnZaR1VpQ2lBZ0lDQWdJR1J2WTNWdFpXNTBMbkYxWlhKNVUyVnNaV04wYjNKQmJHd29JbVp2Y20wZ2FXNXdkWFFpS1M1bWIzSkZZV05vS0dWc0lEMCtJR1ZzTG1ScGMyRmliR1ZrSUQwZ1ptRnNjMlVwQ2lBZ0lDQjlDZ29nSUNBZ2QyOXlhMlZ5TG05dWJXVnpjMkZuWlNBOUlHWjFibU4wYVc5dUtHVXBld29nSUNBZ0lDQnBaaWdoWlM1a1lYUmhLU0I3Q2lBZ0lDQWdJQ0FnY21WMGRYSnVDaUFnSUNBZ0lIMEtDaUFnSUNBZ0lHbG1LR1V1WkdGMFlTQWhQU0J1ZFd4c0lDWW1JSFI1Y0dWdlppQmxMbVJoZEdFZ1BUMGdJbTlpYW1WamRDSWdKaVlnWlM1a1lYUmhMbUo1ZEdWTVpXNW5kR2dnUGlBd0tYc0tJQ0FnSUNBZ0lDQmxibU52WkdWa1gyUmhkR0V1Y0hWemFDaGxMbVJoZEdFcENpQWdJQ0FnSUNBZ2FXNW1ieWdpWlc1amIyUmxJQ0lnS3lCbGJtTnZaR1ZrWDJSaGRHRXViR1Z1WjNSb0lDc2dJaUF2SUNJZ0t5QmxlSFJ5WVdOMFgyWnlZVzFsWDJOdmRXNTBLUW9nSUNBZ0lDQWdJSEJ5YjJkeVpYTnpZbUZ5TG5OMGVXeGxMbmRwWkhSb0lEMGdjR0Z5YzJWSmJuUW9LR1Z1WTI5a1pXUmZaR0YwWVM1c1pXNW5kR2dnTHlCbGVIUnlZV04wWDJaeVlXMWxYMk52ZFc1MEtTQXFJREV3TUN3Z01UQXBJQ3NnSWlVaUNpQWdJQ0FnSUgwS0NpQWdJQ0FnSUdsbUtHVXVaR0YwWVNBOVBTQWlVa1ZCUkZraUtYc0tJQ0FnSUNBZ0lDQnBibVp2S0NKeVpXRmtlU0lzSUdOaGJuWmhjeTUzYVdSMGFDd2dZMkZ1ZG1GekxtaGxhV2RvZENrS0NpQWdJQ0FnSUNBZ2QyOXlhMlZ5TG5CdmMzUk5aWE56WVdkbEtIc0tJQ0FnSUNBZ0lDQWdJSGRwWkhSb09pQmpZVzUyWVhNdWQybGtkR2dzQ2lBZ0lDQWdJQ0FnSUNCb1pXbG5hSFE2SUdOaGJuWmhjeTVvWldsbmFIUXNDaUFnSUNBZ0lDQWdJQ0J5WldGc2RHbHRaVG9nZEhKMVpTd0tJQ0FnSUNBZ0lDQWdJR0pwZEhKaGRHVTZJREV3TUFvZ0lDQWdJQ0FnSUgwcENnb2dJQ0FnSUNBZ0lDOHZabTl5S0d4bGRDQnBJRDBnTURzZ2FTQThJR1p5WVcxbGN5NXNaVzVuZEdnN0lHa3JLeWw3Q2lBZ0lDQWdJQ0FnTHk4Z0lIZHZjbXRsY2k1d2IzTjBUV1Z6YzJGblpTaG1jbUZ0WlhOYmFWMHNJRnRtY21GdFpYTmJhVjFkS1FvZ0lDQWdJQ0FnSUM4dmZRb0tJQ0FnSUNBZ0lDQnlaV0ZrZVNBOUlIUnlkV1VLSUNBZ0lDQWdJQ0J3Y205alpYTnpYM1pwWkdWdktDa0tJQ0FnSUNBZ2ZRb2dJQ0FnSUNCbGJITmxJR2xtS0hKbFlXUjVLWHNLSUNBZ0lDQWdJQ0JwWmlobExtUmhkR0V1WW5sMFpVeGxibWQwYUNBOVBTQXdLWHNLSUNBZ0lDQWdJQ0FnSUdsdVptOG9JbVZ1WTI5a2FXNW5JR1pwYm1semFHVmtJQ2hrZFhKaGRHbHZiam9nSWlBcklIQmhjbk5sU1c1MEtIUnZkR0ZzWDNScGJXVW9jM1JoY25SZmRHbHRaU2tzSURFd0tTQXJDaUFnSUNBZ0lDQWdJQ0FnSUNJZ2N5d2djM0JsWldRNklDSWdLeUJ3WVhKelpVbHVkQ2gwYjNSaGJGOTBhVzFsS0hOMFlYSjBYM1JwYldVcElDOGdaWGgwY21GamRGOW1jbUZ0WlY5amIzVnVkQ3dnTVRBcElDc2lJSE1nTHlCbWNtRnRaU2tpS1FvZ0lDQWdJQ0FnSUNBZ2JHVjBJR0pzYjJJZ1BTQnVaWGNnUW14dllpaGxibU52WkdWa1gyUmhkR0VzSUhzZ2RIbHdaVG9nSjNacFpHVnZMM2RsWW0wbklIMHBDaUFnSUNBZ0lDQWdJQ0J6YUc5M1gyUmhkR0ZmZFhKcEtHSnNiMklwQ2lBZ0lDQWdJQ0FnZlFvZ0lDQWdJQ0I5Q2lBZ0lDQjlDZ29nSUNBZ1puVnVZM1JwYjI0Z2JHOWhaRjkyYVdSbGJ5Z3Bld29nSUNBZ0lDQnlaWFIxY200Z2JtVjNJRkJ5YjIxcGMyVW9jbVZ6YjJ4MlpTQTlQaUI3Q2lBZ0lDQWdJQ0FnZG1sa1pXOHVjM0pqSUQwZ1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaG1hV3hsYzFzd1hTa0tDaUFnSUNBZ0lDQWdkbWxrWlc4dWIyNXNiMkZrWldSdFpYUmhaR0YwWVNBOUlHWjFibU4wYVc5dUtDa2dld29nSUNBZ0lDQWdJQ0FnWTJGdWRtRnpMbWhsYVdkb2RDQTlJSFpwWkdWdkxuWnBaR1Z2U0dWcFoyaDBDaUFnSUNBZ0lDQWdJQ0JqWVc1MllYTXVkMmxrZEdnZ1BTQjJhV1JsYnk1MmFXUmxiMWRwWkhSb0NpQWdJQ0FnSUNBZ0lDQjBhR2x6TG1OMWNuSmxiblJVYVcxbElEMGdUV0YwYUM1dGFXNG9UV0YwYUM1dFlYZ29NQ3dnS0hScGJXVWdQQ0F3SUQ4Z2RHaHBjeTVrZFhKaGRHbHZiaUE2SURBcElDc2dkR2x0WlNrc0lIUm9hWE11WkhWeVlYUnBiMjRwQ2lBZ0lDQWdJQ0FnSUNCeVpYTnZiSFpsS0NrS0lDQWdJQ0FnSUNCOUNpQWdJQ0FnSUgwcENpQWdJQ0I5Q2dvZ0lDQWdZWE41Ym1NZ1puVnVZM1JwYjI0Z2MzUmhjblFvS1hzS0lDQWdJQ0FnYzNSaGNuUmZkR2x0WlNBOUlHNWxkeUJFWVhSbEtDa3VaMlYwVkdsdFpTZ3BDaUFnSUNBZ0lIZHBibVJ2ZHk1emRHRnlkRjkwYVcxbElEMGdjM1JoY25SZmRHbHRaUW9nSUNBZ0lDQmhkMkZwZENCc2IyRmtYM1pwWkdWdktDa0tJQ0FnSUNBZ2QyOXlhMlZ5TG5CdmMzUk5aWE56WVdkbEtDSm9kSFJ3Y3pvdkwzVnVjR3RuTG1OdmJTOTNaV0p0TFhkaGMyMUFNQzQwTGpFdlpHbHpkQzkzWldKdExYZGhjMjB1ZDJGemJTSXBDaUFnSUNCOUNpQWdJQ0E4TDNOamNtbHdkRDRLSUNBOEwySnZaSGsrQ2p3dmFIUnRiRDRLPC9wPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAgICAgICAgPGgyPnRydWx5IGRpc3RyaWJ1dGVkLCBsb2NhbCBmaXJzdCBhcHBzPC9oMj4KICAgICAgICA8cD4KICAgICAgICBEYXRhdXJpIGFwcHMgZG9udCByZWx5IG9uIGh0dHAgc2VydmVyIGZvciBpbml0aWFsaXphdGlvbi4gTWFueSBhcHBzIGhvd2V2ZXIgbG9hZCBkeW5hbWljIGNvbnRlbnQgZnJvbSBpbnRlcm5ldC4KICAgICAgICBSZWxlYXNpbmcgZGF0YXVyaSBhcHBzIGlzIHZlcnkgc2ltcGxlLCBiZWNhdXNlIHRoZXJlIGlzIG5vIG5lZWQgZm9yIHdlYiBzZXJ2ZXIgb3IgZG9tYWluIG5hbWUuCiAgICAgICAgPC9wPgogICAgICAgIDxwPlVzaW5nIG5vc3RyIGFzIGJhY2tib25lIGZvciBkeW5hbWljIGNvbnRlbnQgcHJvdmlkZXMgZGlzdHJpYnV0ZWQgYWx0ZXJuYXRpdmUgZm9yIGNlbnRyYWxpemVkIHNvbHV0aW9ucy4KICAgICAgICBJdCBpcyBzaW1wbGUgdG8gbG9hZCBjb250ZW50IGZyb20gbm9zdHIgbm90ZXMuIE5vc3RyIGlzIGJhc2VkIG9uIHdlYnNvY2tldCBjb25uZWN0aW9uLiBZb3UgY2FuIHB1Ymxpc2ggfjUwIGtCIGRhdGEgb24KICAgICAgICBvbmUgbm9zdHIgbm90ZSwgd2hpY2ggaXMganVzdCBqc29uIHdyYXBwZXIgZm9yIGFueSBkYXRhIGNvbnRlbnQuCiAgICAgICAgU2VlIDxhIGhyZWY9Imh0dHBzOi8vd3d3LmUyZW5jcnlwdGVkLmNvbS9ub3N0ci9uaXBzLyI+bm9zdHIgZG9jdW1lbnRhdGlvbjwvYT4KICAgICAgICBmb3IgbW9yZSBpbmZvcm1hdGlvbi48L3A+CgogICAgICAgIDxoMj5pbW11dGFibGUgb3IgdXBkYXRhYmxlIGNvbnRlbnQ8L2gyPgogICAgICAgIDxwPgogICAgICAgIERhdGF1cmlzIGFyZSBieSBkZWZhdWx0IGltbXV0YWJsZSwgaWUuIGRldmVsb3BlciBjYW5ub3QgdXBkYXRlIGl0cyBjb250ZW50IGFmdGVyIGl0cyBwdWJsaXNoZWQsCiAgICAgICAgaG93ZXZlciB0aGlzIGlzIG5vdCB0cnVlIGZvciBkeW5hbWljYWxseSBsb2FkZWQgY29udGVudC4gRGV2ZWxvcGVyIGNhbiB1c2UgZHluYW1pYyBjb250ZW50IGxvYWRlcgogICAgICAgIHRvIGxvYWQgZnVsbCBwYWdlIHNvdXJjZSBmcm9tIG5vc3RyIGV2ZW50LiBCZWxvdyBpcyBhbiBleGFtcGxlLgogICAgICAgIDwvcD4KICAgICAgICA8dWw+CiAgICAgICAgICA8bGk+ciA9IHJlbGF5X3VyaTwvbGk+CiAgICAgICAgICA8bGk+ayA9IHB1YmtleTwvbGk+CiAgICAgICAgICA8bGk+ZiA9IGRfdGFnPC9saT4KICAgICAgICA8L3VsPgogICAgICAgIDxwIGNsYXNzPSJkYXRhIj5kYXRhOnRleHQvaHRtbDtyPW5vcy5sb2w7az0wMWIwYjE5NjBmZmU4OWVhYTExZTY3Y2E5OTlkODMyZTU1MzUwZGQxN2MwZWE5ZWVlZTFkNWQ2YWM2ZjBmZGQ0O2Y9ZmlsZXB1Ymxpc2guaHRtbDtiYXNlNjQsUEhOamNtbHdkRDRLS0NncElEMCtJSHNLSUNCamIyNXpkQ0J5SUQwZ0luZHpjem92THlJZ0t5QnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Y2owb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9nSUdOdmJuTjBJR3NnUFNCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdhejBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHWWdQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N1pqMG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvS0lDQmtiMk4xYldWdWRDNTNjbWwwWlNnaVBIQStZMjl1Ym1WamRHbHVaeUIwYnlBaUlDc2djaUFySUNJOEwzQStJaWtLSUNCamIyNXpkQ0J6SUQwZ2JtVjNJRmRsWWxOdlkydGxkQ2h5S1FvS0lDQnpMbTl1YjNCbGJpQTlJQ2dwSUQwK0lIc0tJQ0FnSUhNdWMyVnVaQ2duV3lKU1JWRWlMQ0FpY1NJc0lIc2lZWFYwYUc5eWN5STZJRnNpSnlBcklHc2dLeUFuSWwwc0lDSWpaQ0k2SUZzaUp5QXJJR1lnS3lBbklsMTlYU2NwQ2lBZ2ZRb0tJQ0J6TG05dWJXVnpjMkZuWlNBOUlHRnplVzVqSUNobEtTQTlQaUI3Q2lBZ0lDQnpMbU5zYjNObEtDa0tJQ0FnSUdSdlkzVnRaVzUwTG5keWFYUmxLRXBUVDA0dWNHRnljMlVvWlM1a1lYUmhLVnN5WFM1amIyNTBaVzUwS1FvS0lDQWdJSGRvYVd4bEtDRjNhVzVrYjNjdWJHOWhaR1ZrS1hzS0lDQWdJQ0FnWVhkaGFYUWdibVYzSUZCeWIyMXBjMlVvWXlBOVBpQnpaWFJVYVcxbGIzVjBLR01zSURFd0tTa0tJQ0FnSUgwS0NpQWdJQ0JrYVhOd1lYUmphRVYyWlc1MEtHNWxkeUJEZFhOMGIyMUZkbVZ1ZENnaWJHOWhaQ0lwS1FvZ0lIMEtmU2tvS1FvOEwzTmpjbWx3ZEQ0SzwvcD4KICAgICAgICA8cD5JbiB0aGlzIGNhc2UsIGRldmVsb3BlciBjYW4gcHVibGlzaCBuZXcgbm9zdHIgZXZlbnQgdXNpbmcgc2FtZSBwdWJrZXkgYW5kIHNhbWUgZCB0YWcgdmFsdWUsIHdoaWNoIHdpbGwgb3ZlcnJpZGUgdGhlIHByZXZpb3VzIGNvbnRlbnQ8L3A+CiAgICAgIDwvZGl2PgogICAgPC9tYWluPgogICAgPHNjcmlwdD4KICAgIGRvY3VtZW50Lm9uY2xpY2sgPSBmdW5jdGlvbihlKXsKICAgICAgaWYoIWUudGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygiZGF0YSIpKXsKICAgICAgICBmb3IobGV0IGRhdGF1cmkgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgicC5kYXRhIikpewogICAgICAgICAgZGF0YXVyaS5jbGFzc0xpc3QucmVtb3ZlKCJzY3JvbGwiKQogICAgICAgIH0KICAgICAgfQogICAgfQoKICAgIGZvcihsZXQgZGF0YXVyaSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJwLmRhdGEiKSl7CiAgICAgIGRhdGF1cmkub25jbGljayA9IGZ1bmN0aW9uKCl7CiAgICAgICAgY29uc3QgcmFuZ2UgPSBkb2N1bWVudC5jcmVhdGVSYW5nZSgpCiAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZSh0aGlzKQogICAgICAgIGdldFNlbGVjdGlvbigpLnJlbW92ZUFsbFJhbmdlcygpCiAgICAgICAgZ2V0U2VsZWN0aW9uKCkuYWRkUmFuZ2UocmFuZ2UpCiAgICAgICAgdGhpcy5jbGFzc0xpc3QuYWRkKCJzY3JvbGwiKQogICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gYXBwbHlfaGFzaCgpewogICAgICBjb25zdCBhY3RpdmVfaW5kZXggPSBsb2NhdGlvbi5oYXNoID09PSAiI2RldnMiID8gMSA6IDAKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1lbnUuYWN0aXZlIikuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIikKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNvbnRlbnQuYWN0aXZlIikuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIikKICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1lbnUiKVthY3RpdmVfaW5kZXhdLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpCiAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5jb250ZW50IilbYWN0aXZlX2luZGV4XS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKQogICAgfQoKICAgIGFkZEV2ZW50TGlzdGVuZXIoImhhc2hjaGFuZ2UiLCBhcHBseV9oYXNoKQogICAgYXBwbHlfaGFzaCgpCiAgICA8L3NjcmlwdD4KICA8L2JvZHk+CjwvaHRtbD4K

#datauri #info

data:text/html;base64,PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9IiI+CiAgPGhlYWQ+CiAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAgICA8dGl0bGU+PC90aXRsZT4KICAgIDxzdHlsZT4KICAgICAgYm9keSB7CiAgICAgICAgbWFyZ2luOiAxZW0gMWVtIDNlbSAxZW07CiAgICAgIH0KCiAgICAgIC5kYXRhIHsKICAgICAgICBiYWNrZ3JvdW5kOiByZ2IoMjIwLCAyMjAsIDEwMCk7CiAgICAgICAgLypiYWNrZ3JvdW5kOiByZ2IoMTgwLCAyMDAsIDIzMCk7Ki8KICAgICAgICAvKmJhY2tncm91bmQ6IHJnYigxODAsIDIwMCwgMjMwKTsqLwogICAgICAgIG92ZXJmbG93OiBoaWRkZW47CiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsOwogICAgICAgIG1heC1oZWlnaHQ6IDEwZW07CiAgICAgICAgYm9yZGVyLXJhZGl1czogLjNlbTsKICAgICAgICBwYWRkaW5nOiAuM2VtOwogICAgICB9CgogICAgICAuZGF0YS5zY3JvbGwgewogICAgICAgIG92ZXJmbG93OiBzY3JvbGw7CiAgICAgIH0KCiAgICAgIGgyIHsKICAgICAgICBtYXJnaW46IDFlbSAwIC40ZW0gMDsKICAgICAgfQoKICAgICAgcCB7CiAgICAgICAgbWFyZ2luOiAwIDAgMWVtIDA7CiAgICAgIH0KICAgIDwvc3R5bGU+CiAgPC9oZWFkPgogIDxib2R5PgogICAgPGhlYWRlcj4KICAgICAgPGgxPmRhdGF1cmkgaW5mbzwvaDE+CiAgICA8L2hlYWRlcj4KICAgIDxtYWluPgogICAgICA8cD4KICAgICAgV2hhdCBpcyBkYXRhdXJpIGFwcGxpY2F0aW9uPyBBcHBzIGhvc3RlZCBhcyBkYXRhdXJpcyBhcmUgYmFzaWNhbGx5IHBvcnRhYmxlIHdlYiBhcHBzIHRoYXQgd29yayB3aXRob3V0IGh0dHAgc2VydmVyLgogICAgICBJZiB5b3Ugc2VlIHRoaXMgcGFnZSwgeW91IHByb2JhYmx5IGFscmVhZHkga25vdyBob3cgZGF0YXVyaSBhcHBzIHdvcmsuIFlvdSBqdXN0IGNvcHktcGFzdGUgdGhlIGxpbmsgYW5kIGFjY2VzcyB0aGUgYXBwLgogICAgICBIZXJlIGFyZSBzb21lIGRhdGF1cmkgYXBwcy4KICAgICAgPC9wPgogICAgICA8aDI+d2lyZWQ8L2gyPgogICAgICA8cD5hbm9uIGFwcHJvdmVkIHBvdyBiYXNlZCBub3N0ciBjbGllbnQ8L3A+CiAgICAgIDxwIGNsYXNzPSJkYXRhIj5kYXRhOnRleHQvaHRtbDtiYXNlNjQsUENGa2IyTjBlWEJsSUdoMGJXdytQR2gwYld3Z2JHRnVaejBpWlc0aVBqeG9aV0ZrUGp4dFpYUmhJR05vWVhKelpYUTlJblYwWmkwNElpOCtQRzFsZEdFZ2JtRnRaVDBpZG1sbGQzQnZjblFpSUdOdmJuUmxiblE5SW5kcFpIUm9QV1JsZG1salpTMTNhV1IwYUN4cGJtbDBhV0ZzTFhOallXeGxQVEVpTHo0OGJXVjBZU0J1WVcxbFBTSjBhR1Z0WlMxamIyeHZjaUlnWTI5dWRHVnVkRDBpSXpBd01EQXdNQ0l2UGp4dFpYUmhJRzVoYldVOUltMXZZbWxzWlMxM1pXSXRZWEJ3TFdOaGNHRmliR1VpSUdOdmJuUmxiblE5SW5sbGN5SXZQanh0WlhSaElHNWhiV1U5SW1Gd2NHeGxMWFJ2ZFdOb0xXWjFiR3h6WTNKbFpXNGlJR052Ym5SbGJuUTlJbmxsY3lJdlBqeHRaWFJoSUc1aGJXVTlJbUZ3Y0d4bExXMXZZbWxzWlMxM1pXSXRZWEJ3TFhScGRHeGxJaUJqYjI1MFpXNTBQU0pGZUhCdklpOCtQRzFsZEdFZ2JtRnRaVDBpWVhCd2JHVXRiVzlpYVd4bExYZGxZaTFoY0hBdFkyRndZV0pzWlNJZ1kyOXVkR1Z1ZEQwaWVXVnpJaTgrUEcxbGRHRWdibUZ0WlQwaVlYQndiR1V0Ylc5aWFXeGxMWGRsWWkxaGNIQXRjM1JoZEhWekxXSmhjaTF6ZEhsc1pTSWdZMjl1ZEdWdWREMGlaR1ZtWVhWc2RDSXZQanh0WlhSaElHNWhiV1U5SW1SbGMyTnlhWEIwYVc5dUlpQmpiMjUwWlc1MFBTSlVhR1VnVjJseVpXUWlMejQ4ZEdsMGJHVStWR2hsSUZkcGNtVmtQQzkwYVhSc1pUNDhMMmhsWVdRK1BHSnZaSGsrUEc1dmMyTnlhWEIwUGxsdmRTQnVaV1ZrSUhSdklHVnVZV0pzWlNCS1lYWmhVMk55YVhCMElIUnZJSEoxYmlCMGFHbHpJR0Z3Y0M0OEwyNXZjMk55YVhCMFBqeGthWFlnYVdROUluSnZiM1FpUGp3dlpHbDJQanh6WTNKcGNIUStDaWhoYzNsdVl5Qm1kVzVqZEdsdmJpZ3Bld29nSUdGemVXNWpJR1oxYm1OMGFXOXVJR1JuWlhRb2FXUXNJSEpsYkdGNUtYc0tJQ0FnSUhKbGRIVnliaUJ1WlhjZ1VISnZiV2x6WlNnb2NtVnpiMngyWlNrZ1BUNGdld29nSUNBZ0lDQmpiMjV6ZENCemIyTnJaWFFnUFNCdVpYY2dWMlZpVTI5amEyVjBLSEpsYkdGNUtRb2dJQ0FnSUNCc1pYUWdabWxzWlY5a1lYUmhJRDBnVzEwS0lDQWdJQ0FnYkdWMElHWnBiR1ZwWkhNZ1BTQmJYUW9LSUNBZ0lDQWdjMjlqYTJWMExtOXViM0JsYmlBOUlHWjFibU4wYVc5dUtDbDdDaUFnSUNBZ0lDQWdjMjlqYTJWMExuTmxibVFvU2xOUFRpNXpkSEpwYm1kcFpua29XeUpTUlZFaUxDQWlabWxzWldsa2N5SXNJSHNpYVdSeklqb2dXMmxrWFgxZEtTa0tJQ0FnSUNBZ2ZRb0tJQ0FnSUNBZ2MyOWphMlYwTG05dWJXVnpjMkZuWlNBOUlHRnplVzVqSUdaMWJtTjBhVzl1S0dVcGV3b2dJQ0FnSUNBZ0lHTnZibk4wSUdSaGRHRWdQU0JLVTA5T0xuQmhjbk5sS0dVdVpHRjBZU2tLQ2lBZ0lDQWdJQ0FnYVdZb1pHRjBZVnN3WFNBOVBUMGdJa1ZXUlU1VUlpQW1KaUJrWVhSaFd6RmRJRDA5UFNBaVptbHNaV2xrY3lJcGV3b2dJQ0FnSUNBZ0lDQWdabWxzWldsa2N5NXdkWE5vS0M0dUxrcFRUMDR1Y0dGeWMyVW9aR0YwWVZzeVhTNWpiMjUwWlc1MEtTNW1hV3hsYVdSektRb2dJQ0FnSUNBZ0lDQWdjMjlqYTJWMExuTmxibVFvU2xOUFRpNXpkSEpwYm1kcFpua29XeUpTUlZFaUxDQWljR0Z5ZEhNaUxDQjdJbWxrY3lJNklHWnBiR1ZwWkhNc0lDSnNhVzFwZENJNklETXdNREI5WFNrcENpQWdJQ0FnSUNBZ2ZRb2dJQ0FnSUNBZ0lHVnNjMlVnYVdZb1pHRjBZVnN3WFNBOVBUMGdJa1ZXUlU1VUlpQW1KaUJrWVhSaFd6RmRJRDA5UFNBaWNHRnlkSE1pS1hzS0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUcxaGRHTm9JRDBnWkdGMFlWc3lYUzVqYjI1MFpXNTBMbTFoZEdOb0tDOWVjR0Z5ZENoY1pIc3hMRFI5S1Rzb1hHUjdNU3cwZlNrN1cyRXRlakF0T1Ywck95OHBDZ29nSUNBZ0lDQWdJQ0FnYVdZb2JXRjBZMmdwZXdvZ0lDQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCd1lYSjBYMlJoZEdFZ1BTQmtZWFJoV3pKZExtTnZiblJsYm5RdWMzVmljM1J5S0cxaGRHTm9XekJkTG14bGJtZDBhQ2tLSUNBZ0lDQWdJQ0FnSUNBZ1ptbHNaVjlrWVhSaExuQjFjMmdvVzNCaGNuTmxTVzUwS0cxaGRHTm9XekZkTENBeE1Da3NJSEJoY25SZlpHRjBZVjBwQ2lBZ0lDQWdJQ0FnSUNCOVpXeHpaWHNLSUNBZ0lDQWdJQ0FnSUNBZ1ptbHNaVjlrWVhSaExuQjFjMmdvV3pFc0lHUmhkR0ZiTWwwdVkyOXVkR1Z1ZEYwcENpQWdJQ0FnSUNBZ0lDQjlDZ29nSUNBZ0lDQWdJQ0FnYVdZb1ptbHNaVjlrWVhSaExteGxibWQwYUNBOVBUMGdabWxzWldsa2N5NXNaVzVuZEdncGV3b2dJQ0FnSUNBZ0lDQWdJQ0JtYVd4bFgyUmhkR0VnUFNCbWFXeGxYMlJoZEdFdWMyOXlkQ2dvWVN3Z1lpa2dQVDRnWVZzd1hTQXRJR0piTUYwcExtMWhjQ2hsSUQwK0lHVmJNVjBwQ2lBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUdSaGRHRjFjbWtnUFNBaVpHRjBZVG9pSUNzZ1ptbHNaVjlrWVhSaExtcHZhVzRvSWlJcENpQWdJQ0FnSUNBZ0lDQWdJR052Ym5OMElHSnNiMklnUFNCaGQyRnBkQ0FvWVhkaGFYUWdabVYwWTJnb1pHRjBZWFZ5YVNrcExtSnNiMklvS1FvZ0lDQWdJQ0FnSUNBZ0lDQnlaWE52YkhabEtHSnNiMklwQ2lBZ0lDQWdJQ0FnSUNCOUNpQWdJQ0FnSUNBZ2ZRb2dJQ0FnSUNCOUNpQWdJQ0I5S1FvZ0lIMEtDaUFnWTI5dWMzUWdkMjl5YTJWeVgzTnZkWEpqWlNBOUlHRjNZV2wwSUdSblpYUW9JbVpsWldObFlUQXhabVUyWkRreU1HVTVaalUyTTJVNU9XVTFNamRoTW1FMU1qVmxPRFF3T1RVeU4yVmlNamMzWXprMFpESmxPVEEzTXpSa1l6UmpOVEFpTENBaWQzTnpPaTh2Ym05ekxteHZiQ0lwQ2lBZ1kyOXVjM1FnZDI5eWEyVnlYelU1TWw5MWNtd2dQU0JWVWt3dVkzSmxZWFJsVDJKcVpXTjBWVkpNS0dGM1lXbDBJR1JuWlhRb0ltWmxNR1ZoTmpBMk9EQmlNVFl3WWpZeU4yTTBZbVl6TlRobE1EazFZV1poTVRjeE5XSmhNVGxoTldJNVl6a3dPVFl6TUdRMU1tUXpaVFF6TWpRM01tTWlMQ0FpZDNOek9pOHZibTl6TG14dmJDSXBLUW9nSUdOdmJuTjBJR2xqYjI1ZmNHNW5YM1Z5YkNBOUlGVlNUQzVqY21WaGRHVlBZbXBsWTNSVlVrd29ZWGRoYVhRZ1pHZGxkQ2dpTURWa1pUTTBaV0U1TURreU1tVmxPVFF4TURVell6UXpZalV3TUdSaFlURTBPRFJsTVdZM016TTJNMlpqTldSaE56SXlNelJpTkRBellqazNOek0zT0NJc0lDSjNjM002THk5dWIzTXViRzlzSWlrcENpQWdZMjl1YzNRZ2JXRnBibDlxYzE5dFlYQmZkWEpzSUQwZ1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaGhkMkZwZENCa1oyVjBLQ0kxTldWa05EZGlNamswTnpKa1pURTRZMkkzTVdRME0yTmpPR05tWm1VM05UY3dOekptTkRBM1kyWmxPR05sWWpSa01EUXlORGRpWkdVME5EYzFNMlZsSWl3Z0luZHpjem92TDI1dmN5NXNiMndpS1NrS0NpQWdiR1YwSUhkdmNtdGxjbDl6YjNWeVkyVmZjM1J5SUQwZ1lYZGhhWFFnZDI5eWEyVnlYM052ZFhKalpTNTBaWGgwS0NrS0lDQjNiM0pyWlhKZmMyOTFjbU5sWDNOMGNpQTlJSGR2Y210bGNsOXpiM1Z5WTJWZmMzUnlMbkpsY0d4aFkyVW9KMmx0Y0c5eWRGTmpjbWx3ZEhNb2RDNXdLM1F1ZFNoeUtTa25MQ0FuYVcxd2IzSjBVMk55YVhCMGN5Z2lKeUFySUhkdmNtdGxjbDgxT1RKZmRYSnNJQ3NnSnlJcEp5a0tJQ0JqYjI1emRDQjNiM0pyWlhKZmRYSnNJRDBnVlZKTUxtTnlaV0YwWlU5aWFtVmpkRlZTVENodVpYY2dRbXh2WWloYmQyOXlhMlZ5WDNOdmRYSmpaVjl6ZEhKZExDQjdkSGx3WlRvZ0luUmxlSFF2YW1GMllYTmpjbWx3ZENKOUtTa0tDaUFnWTI5dWMzUWdiM0pwWjJsdVlXeFhiM0pyWlhKRGIyNXpkSEoxWTNSdmNpQTlJRmR2Y210bGNqc0tDaUFnVjI5eWEyVnlJRDBnWm5WdVkzUnBiMjRvZFhKc0tTQjdDaUFnSUNCMWNtd2dQU0IzYjNKclpYSmZkWEpzQ2lBZ0lDQnlaWFIxY200Z2JtVjNJRzl5YVdkcGJtRnNWMjl5YTJWeVEyOXVjM1J5ZFdOMGIzSW9kWEpzS1RzS0lDQjlDZ29nSUZWU1RDQTlJR05zWVhOeklFMTVWVkpNSUdWNGRHVnVaSE1nVlZKTUlIc0tJQ0FnSUdOdmJuTjBjblZqZEc5eUtHbHVjSFYwS1NCN0NpQWdJQ0FnSUhOMWNHVnlLR2x1Y0hWMExtbHVaR1Y0VDJZb0lpOGlLU0E5UFQwZ01DQW1KaUFvYkc5allYUnBiMjR1Y0hKdmRHOWpiMndnS3lCc2IyTmhkR2x2Ymk1d1lYUm9ibUZ0WlNBcklHbHVjSFYwS1NCOGZDQnBibkIxZENrN0NpQWdJQ0I5Q2lBZ2ZRb0tJQ0JrWVhSaFRHOWpZV3hUZEc5eVlXZGxJRDBnZXdvZ0lDQWdaMlYwU1hSbGJUb2dablZ1WTNScGIyNG9LWHQ5TEFvZ0lDQWdjMlYwU1hSbGJUb2dablZ1WTNScGIyNG9LWHQ5Q2lBZ2ZRb0tJQ0JqYjI1emRDQnpZM0pwY0hSeklEMGdXd29nSUNBZ0lqRTFORE5oTURjd1lUUXlaVGhsTUdNd05UZzJNVGcwTUdKa1pUZGxOV0kyT1RGak5HSTFaR1ZqTmpZeU56UTFPRFV5WXpJeU9ETmpabVZtWkRoallUVWlDaUFnWFFvS0lDQmpiMjV6ZENCemRIbHNaWE1nUFNCYkNpQWdJQ0FpTmprNU5qQTNOelJqWlRaa1ptRTRNekZoTXpNd09EY3pOREV5TldRNE1HUmxNalk1WVRnMFpqVTVPRGc0WVRka016RXlNVFZsWVRGaFl6VTFNVEUxTWlJS0lDQmRDZ29nSUdOdmJuTjBJSE5qY21sd2RGOXBaQ0E5SUhOamNtbHdkSE5iTUYwS0lDQmpiMjV6ZENCelkzSnBjSFJmYzI5MWNtTmxJRDBnWVhkaGFYUWdaR2RsZENoelkzSnBjSFJmYVdRc0lDSjNjM002THk5dWIzTXViRzlzSWlrS0lDQnNaWFFnYzJOeWFYQjBYM052ZFhKalpWOXpkSElnUFNCaGQyRnBkQ0J6WTNKcGNIUmZjMjkxY21ObExuUmxlSFFvS1FvZ0lITmpjbWx3ZEY5emIzVnlZMlZmYzNSeUlEMGdjMk55YVhCMFgzTnZkWEpqWlY5emRISXVjbVZ3YkdGalpTZ2lMMmxqYjI0dWNHNW5JaXdnYVdOdmJsOXdibWRmZFhKc0tRb2dJSE5qY21sd2RGOXpiM1Z5WTJWZmMzUnlJRDBnYzJOeWFYQjBYM052ZFhKalpWOXpkSEl1Y21Wd2JHRmpaU2d2S0hOdmRYSmpaVTFoY0hCcGJtZFZVa3c5S1NodFlXbHVYQzViWVMxNk1DMDVYWHM0ZlZ3dWFuTmNMbTFoY0NrdkxDQWlKREZvZEhSd09pOHZiRzlqWVd4b2IzTjBPamd3TURBdkpESWlLUW9nSUhOamNtbHdkRjl6YjNWeVkyVmZjM1J5SUQwZ2MyTnlhWEIwWDNOdmRYSmpaVjl6ZEhJdWNtVndiR0ZqWlVGc2JDZ2liRzlqWVd4VGRHOXlZV2RsSWl3Z0ltUmhkR0ZNYjJOaGJGTjBiM0poWjJVaUtRb0tJQ0JqYjI1emRDQnpZM0pwY0hSZlpXd2dQU0JrYjJOMWJXVnVkQzVqY21WaGRHVkZiR1Z0Wlc1MEtDSnpZM0pwY0hRaUtRb2dJSE5qY21sd2RGOWxiQzV6Y21NZ1BTQlZVa3d1WTNKbFlYUmxUMkpxWldOMFZWSk1LRzVsZHlCQ2JHOWlLRnR6WTNKcGNIUmZjMjkxY21ObFgzTjBjbDBzSUh0MGVYQmxPaUFpZEdWNGRDOXFZWFpoYzJOeWFYQjBJbjBwS1FvZ0lHTnZibk52YkdVdWJHOW5LQ0p6WTNKcGNIUmZaV3d1YzNKaklpd2djMk55YVhCMFgyVnNMbk55WXlrS0lDQmtiMk4xYldWdWRDNWliMlI1TG1Gd2NHVnVaQ2h6WTNKcGNIUmZaV3dwQ2dvZ0lHWnZjaWhzWlhRZ2MzUjViR1ZmYVdRZ2IyWWdjM1I1YkdWektYc0tJQ0FnSUdOdmJuTjBJSE4wZVd4bFgzTnZkWEpqWlNBOUlHRjNZV2wwSUdSblpYUW9jM1I1YkdWZmFXUXNJQ0ozYzNNNkx5OXViM011Ykc5c0lpa0tJQ0FnSUdOdmJuTjBJSE4wZVd4bFgyVnNJRDBnWkc5amRXMWxiblF1WTNKbFlYUmxSV3hsYldWdWRDZ2liR2x1YXlJcENpQWdJQ0J6ZEhsc1pWOWxiQzV5Wld3Z1BTQWljM1I1YkdWemFHVmxkQ0lLSUNBZ0lITjBlV3hsWDJWc0xtaHlaV1lnUFNCVlVrd3VZM0psWVhSbFQySnFaV04wVlZKTUtHRjNZV2wwSUhOMGVXeGxYM052ZFhKalpTa0tJQ0FnSUdSdlkzVnRaVzUwTG1KdlpIa3VZWEJ3Wlc1a0tITjBlV3hsWDJWc0tRb2dJSDBLZlNrb0tRbzhMM05qY21sd2RENEtQQzlpYjJSNVBqd3ZhSFJ0YkQ0SzwvcD4KCiAgICAgIDxoMj5vdXJjaGFuPC9oMj4KICAgICAgPHA+YW5vbiBhcHByb3ZlZCBpbWFnZSBib2FyZDwvcD4KICAgICAgPHAgY2xhc3M9ImRhdGEiPmRhdGE6dGV4dC9odG1sO3I9bm9zLmxvbDtrPTJiOGQ1MGZjYzk3NGZmYjY1MmMwYWIzM2VkZWJiNmE5Y2U3MmNkMTU0NTkxOTY5NTkyYmM4YjYwN2E0ZWExZjI7Zj1vdXJjaGFuO2Jhc2U2NCxQSE5qY21sd2RENEtLQ2dwSUQwK0lIc0tJQ0JqYjI1emRDQnlJRDBnSW5kemN6b3ZMeUlnS3lCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdjajBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHc2dQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N2F6MG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvZ0lHTnZibk4wSUdZZ1BTQnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Wmowb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9LSUNCa2IyTjFiV1Z1ZEM1M2NtbDBaU2dpUEhBK1kyOXVibVZqZEdsdVp5QjBieUFpSUNzZ2NpQXJJQ0k4TDNBK0lpa0tJQ0JqYjI1emRDQnpJRDBnYm1WM0lGZGxZbE52WTJ0bGRDaHlLUW9LSUNCekxtOXViM0JsYmlBOUlDZ3BJRDArSUhzS0lDQWdJSE11YzJWdVpDZ25XeUpTUlZFaUxDQWljU0lzSUhzaVlYVjBhRzl5Y3lJNklGc2lKeUFySUdzZ0t5QW5JbDBzSUNJalpDSTZJRnNpSnlBcklHWWdLeUFuSWwxOVhTY3BDaUFnZlFvS0lDQnpMbTl1YldWemMyRm5aU0E5SUdGemVXNWpJQ2hsS1NBOVBpQjdDaUFnSUNCekxtTnNiM05sS0NrS0lDQWdJR1J2WTNWdFpXNTBMbmR5YVhSbEtFcFRUMDR1Y0dGeWMyVW9aUzVrWVhSaEtWc3lYUzVqYjI1MFpXNTBLUW9LSUNBZ0lIZG9hV3hsS0NGM2FXNWtiM2N1Ykc5aFpHVmtLWHNLSUNBZ0lDQWdZWGRoYVhRZ2JtVjNJRkJ5YjIxcGMyVW9ZeUE5UGlCelpYUlVhVzFsYjNWMEtHTXNJREV3S1NrS0lDQWdJSDBLQ2lBZ0lDQmthWE53WVhSamFFVjJaVzUwS0c1bGR5QkRkWE4wYjIxRmRtVnVkQ2dpYkc5aFpDSXBLUW9nSUgwS2ZTa29LUW84TDNOamNtbHdkRDRLPC9wPgoKICAgICAgPGgyPmZpbGVwdWJsaXNoPC9oMj4KICAgICAgPHA+dXBsb2FkIGZpbGVzPC9wPgogICAgICA8cCBjbGFzcz0iZGF0YSI+ZGF0YTp0ZXh0L2h0bWw7cj1ub3MubG9sO2s9MDFiMGIxOTYwZmZlODllYWExMWU2N2NhOTk5ZDgzMmU1NTM1MGRkMTdjMGVhOWVlZWUxZDVkNmFjNmYwZmRkNDtmPWZpbGVwdWJsaXNoLmh0bWw7YmFzZTY0LFBITmpjbWx3ZEQ0S0tDZ3BJRDArSUhzS0lDQmpiMjV6ZENCeUlEMGdJbmR6Y3pvdkx5SWdLeUJzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N2NqMG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvZ0lHTnZibk4wSUdzZ1BTQnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3YXowb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9nSUdOdmJuTjBJR1lnUFNCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdaajBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb0tJQ0JrYjJOMWJXVnVkQzUzY21sMFpTZ2lQSEErWTI5dWJtVmpkR2x1WnlCMGJ5QWlJQ3NnY2lBcklDSThMM0ErSWlrS0lDQmpiMjV6ZENCeklEMGdibVYzSUZkbFlsTnZZMnRsZENoeUtRb0tJQ0J6TG05dWIzQmxiaUE5SUNncElEMCtJSHNLSUNBZ0lITXVjMlZ1WkNnbld5SlNSVkVpTENBaWNTSXNJSHNpWVhWMGFHOXljeUk2SUZzaUp5QXJJR3NnS3lBbklsMHNJQ0lqWkNJNklGc2lKeUFySUdZZ0t5QW5JbDE5WFNjcENpQWdmUW9LSUNCekxtOXViV1Z6YzJGblpTQTlJR0Z6ZVc1aklDaGxLU0E5UGlCN0NpQWdJQ0J6TG1Oc2IzTmxLQ2tLSUNBZ0lHUnZZM1Z0Wlc1MExuZHlhWFJsS0VwVFQwNHVjR0Z5YzJVb1pTNWtZWFJoS1ZzeVhTNWpiMjUwWlc1MEtRb0tJQ0FnSUhkb2FXeGxLQ0YzYVc1a2IzY3ViRzloWkdWa0tYc0tJQ0FnSUNBZ1lYZGhhWFFnYm1WM0lGQnliMjFwYzJVb1l5QTlQaUJ6WlhSVWFXMWxiM1YwS0dNc0lERXdLU2tLSUNBZ0lIMEtDaUFnSUNCa2FYTndZWFJqYUVWMlpXNTBLRzVsZHlCRGRYTjBiMjFGZG1WdWRDZ2liRzloWkNJcEtRb2dJSDBLZlNrb0tRbzhMM05qY21sd2RENEs8L3A+CgogICAgICA8aDI+ZmlsZWxvYWRlcjwvaDI+CiAgICAgIDxwPmRvd25sb2FkL3ZpZXcgZmlsZXM8L3A+CiAgICAgIDxwIGNsYXNzPSJkYXRhIj5kYXRhOnRleHQvaHRtbDtyPW5vcy5sb2w7az0wMWIwYjE5NjBmZmU4OWVhYTExZTY3Y2E5OTlkODMyZTU1MzUwZGQxN2MwZWE5ZWVlZTFkNWQ2YWM2ZjBmZGQ0O2Y9ZmlsZWxvYWRlci5odG1sO2Jhc2U2NCxQSE5qY21sd2RENEtLQ2dwSUQwK0lIc0tJQ0JqYjI1emRDQnlJRDBnSW5kemN6b3ZMeUlnS3lCc2IyTmhkR2x2Ymk1b2NtVm1MbTFoZEdOb0tDOWtZWFJoT2x4VEt6ODdjajBvVzE0N1hTc3BYRk1xTzJKaGMyVTJOQ3d2S1ZzeFhRb2dJR052Ym5OMElHc2dQU0JzYjJOaGRHbHZiaTVvY21WbUxtMWhkR05vS0M5a1lYUmhPbHhUS3o4N2F6MG9XMTQ3WFNzcFhGTXFPMkpoYzJVMk5Dd3ZLVnN4WFFvZ0lHTnZibk4wSUdZZ1BTQnNiMk5oZEdsdmJpNW9jbVZtTG0xaGRHTm9LQzlrWVhSaE9seFRLejg3Wmowb1cxNDdYU3NwWEZNcU8ySmhjMlUyTkN3dktWc3hYUW9LSUNCa2IyTjFiV1Z1ZEM1M2NtbDBaU2dpUEhBK1kyOXVibVZqZEdsdVp5QjBieUFpSUNzZ2NpQXJJQ0k4TDNBK0lpa0tJQ0JqYjI1emRDQnpJRDBnYm1WM0lGZGxZbE52WTJ0bGRDaHlLUW9LSUNCekxtOXViM0JsYmlBOUlDZ3BJRDArSUhzS0lDQWdJSE11YzJWdVpDZ25XeUpTUlZFaUxDQWljU0lzSUhzaVlYVjBhRzl5Y3lJNklGc2lKeUFySUdzZ0t5QW5JbDBzSUNJalpDSTZJRnNpSnlBcklHWWdLeUFuSWwxOVhTY3BDaUFnZlFvS0lDQnpMbTl1YldWemMyRm5aU0E5SUdGemVXNWpJQ2hsS1NBOVBpQjdDaUFnSUNCekxtTnNiM05sS0NrS0lDQWdJR1J2WTNWdFpXNTBMbmR5YVhSbEtFcFRUMDR1Y0dGeWMyVW9aUzVrWVhSaEtWc3lYUzVqYjI1MFpXNTBLUW9LSUNBZ0lIZG9hV3hsS0NGM2FXNWtiM2N1Ykc5aFpHVmtLWHNLSUNBZ0lDQWdZWGRoYVhRZ2JtVjNJRkJ5YjIxcGMyVW9ZeUE5UGlCelpYUlVhVzFsYjNWMEtHTXNJREV3S1NrS0lDQWdJSDBLQ2lBZ0lDQmthWE53WVhSamFFVjJaVzUwS0c1bGR5QkRkWE4wYjIxRmRtVnVkQ2dpYkc5aFpDSXBLUW9nSUgwS2ZTa29LUW84TDNOamNtbHdkRDRLPC9wPgoKICAgICAgPGgyPnZpZGVvIGNsaXAgY3JlYXRvcjwvaDI+CiAgICAgIDxwPmNyZWF0ZSBhbmQgdXBsb2FkIDEgc2Vjb25kIHZpZGVvIGNsaXBzPC9wPgogICAgICA8cCBjbGFzcz0iZGF0YSI+ZGF0YTp0ZXh0L2h0bWw7YmFzZTY0LFBDRkVUME5VV1ZCRklHaDBiV3crQ2p4b2RHMXNQZ29nSUR4b1pXRmtQZ29nSUNBZ1BIUnBkR3hsUG5acFpHVnZJR05zYVhBZ1kzSmxZWFJ2Y2p3dmRHbDBiR1UrQ2lBZ0lDQThjM1I1YkdVK0NpQWdJQ0JpYjJSNUlIc0tJQ0FnSUNBZ2JXRnlaMmx1T2lBeFpXMDdDaUFnSUNCOUNpQWdJQ0JvTVNCN0NpQWdJQ0FnSUcxaGNtZHBiaTEwYjNBNklEQTdDaUFnSUNBZ0lHWnZiblF0YzJsNlpUb2dNUzQxWlcwN0NpQWdJQ0I5Q2lBZ0lDQWpiRzluSUhzS0lDQWdJQ0FnYjNabGNtWnNiM2M2SUdGMWRHODdDaUFnSUNBZ0lIQnZjMmwwYVc5dU9pQmhZbk52YkhWMFpUc0tJQ0FnSUNBZ1ltOTBkRzl0T2lBeFpXMDdDaUFnSUNBZ0lIUnZjRG9nTVRGbGJUc0tJQ0FnSUNBZ1ltOXlaR1Z5T2lBdU0yVnRJSE52Ykdsa0lDTTJOalk3Q2lBZ0lDQWdJR0p2Y21SbGNpMXlZV1JwZFhNNklDNHpaVzA3Q2lBZ0lDQWdJSEpwWjJoME9pQXhaVzA3Q2lBZ0lDQWdJR3hsWm5RNklERmxiVHNLSUNBZ0lDQWdjR0ZrWkdsdVp6b2dMalZsYlRzS0lDQWdJQ0FnWW1GamEyZHliM1Z1WkRvZ0kyVmxaVHNLSUNBZ0lIMEtJQ0FnSUNOd2NtOW5jbVZ6Y3lCN0NpQWdJQ0FnSUdKaFkydG5jbTkxYm1RNklDTmtaR1E3Q2lBZ0lDQWdJR0p2Y21SbGNpMXlZV1JwZFhNNklDNHpaVzA3Q2lBZ0lDQjlDaUFnSUNBamNISnZaM0psYzNOaVlYSWdld29nSUNBZ0lDQm9aV2xuYUhRNklERXVNMlZ0T3dvZ0lDQWdJQ0JpWVdOclozSnZkVzVrT2lCaWJIVmxPd29nSUNBZ0lDQjNhV1IwYURvZ01DVTdDaUFnSUNBZ0lHSnZjbVJsY2kxeVlXUnBkWE02SUM0MFpXMDdDaUFnSUNCOUNpQWdJQ0FqYkc5bklENGdZU0I3Q2lBZ0lDQWdJRzFoY21kcGJpMWliM1IwYjIwNklERmxiVHNLSUNBZ0lDQWdaR2x6Y0d4aGVUb2dZbXh2WTJzN0NpQWdJQ0I5Q2lBZ0lDQndJSHNLSUNBZ0lDQWdiV0Z5WjJsdUxYUnZjRG9nTURzS0lDQWdJQ0FnYldGNExXaGxhV2RvZERvZ04yVnRPd29nSUNBZ0lDQnZkbVZ5Wm14dmR6b2djMk55YjJ4c093b2dJQ0FnZlFvZ0lDQWdkbWxrWlc4Z2V3b2dJQ0FnSUNCa2FYTndiR0Y1T2lCdWIyNWxPd29nSUNBZ0lDQjZMV2x1WkdWNE9pQXhPd29nSUNBZ2ZRb2dJQ0FnSTJOaGJuWmhjeXdLSUNBZ0lIWnBaR1Z2SUhzS0lDQWdJQ0FnY0c5emFYUnBiMjQ2SUdGaWMyOXNkWFJsT3dvZ0lDQWdJQ0IwYjNBNklERmxiVHNLSUNBZ0lDQWdjbWxuYUhRNklERmxiVHNLSUNBZ0lDQWdkMmxrZEdnNklERXdaVzA3Q2lBZ0lDQWdJR2hsYVdkb2REb2dObVZ0T3dvZ0lDQWdmUW9nSUNBZ1BDOXpkSGxzWlQ0S0lDQThMMmhsWVdRK0NpQWdQR0p2WkhrK0NpQWdJQ0E4YURFK2RtbGtaVzhnWTJ4cGNDQmpjbVZoZEc5eVBDOW9NVDRLSUNBZ0lEeG1iM0p0SUdsa1BTSm1iM0p0SWo0S0lDQWdJQ0FnUEhBK0NpQWdJQ0FnSUNBZ1BHbHVjSFYwSUdsa1BTSm1hV3hsSWlCMGVYQmxQU0ptYVd4bElpOCtDaUFnSUNBZ0lEd3ZjRDRLSUNBZ0lDQWdQSEErQ2lBZ0lDQWdJQ0FnUEdsdWNIVjBJR2xrUFNKemRXSnRhWFFpSUhSNWNHVTlJbk4xWW0xcGRDSWdkbUZzZFdVOUltVnVZMjlrWlNJdlBnb2dJQ0FnSUNBOEwzQStDaUFnSUNBOEwyWnZjbTArQ2lBZ0lDQThkbWxrWlc4Z2FXUTlJblpwWkdWdklqNDhMM1pwWkdWdlBnb2dJQ0FnUEhacFpHVnZJR2xrUFNKMmFXUmxieklpSUdOdmJuUnliMnh6SUd4dmIzQTlJakVpUGp3dmRtbGtaVzgrQ2lBZ0lDQThZMkZ1ZG1GeklHbGtQU0pqWVc1MllYTWlQand2WTJGdWRtRnpQZ29nSUNBZ1BHUnBkaUJwWkQwaWNISnZaM0psYzNNaVBnb2dJQ0FnSUNBOFpHbDJJR2xrUFNKd2NtOW5jbVZ6YzJKaGNpSStQQzlrYVhZK0NpQWdJQ0E4TDJScGRqNEtJQ0FnSUR4a2FYWWdhV1E5SW14dlp5SStQR1JwZGo0S0lDQWdJRHh6WTNKcGNIUWdkSGx3WlQwaWJXOWtkV3hsSWo0S0lDQWdJR052Ym5OMElHTmhiblpoY3lBOUlHUnZZM1Z0Wlc1MExtZGxkRVZzWlcxbGJuUkNlVWxrS0NKallXNTJZWE1pS1FvZ0lDQWdZMjl1YzNRZ1kzUjRJRDBnWTJGdWRtRnpMbWRsZEVOdmJuUmxlSFFvSnpKa0p5a0tJQ0FnSUdOdmJuTjBJR3h2WnlBOUlHUnZZM1Z0Wlc1MExtZGxkRVZzWlcxbGJuUkNlVWxrS0NKc2IyY2lLUW9nSUNBZ1kyOXVjM1FnZG1sa1pXOGdQU0JrYjJOMWJXVnVkQzVuWlhSRmJHVnRaVzUwUW5sSlpDZ2lkbWxrWlc4aUtRb2dJQ0FnWTI5dWMzUWdkbWxrWlc4eUlEMGdaRzlqZFcxbGJuUXVaMlYwUld4bGJXVnVkRUo1U1dRb0luWnBaR1Z2TWlJcENpQWdJQ0JqYjI1emRDQndjbTluY21WemMySmhjaUE5SUdSdlkzVnRaVzUwTG1kbGRFVnNaVzFsYm5SQ2VVbGtLQ0p3Y205bmNtVnpjMkpoY2lJcENpQWdJQ0JzWlhRZ1ptbHNaWE1nUFNCdWRXeHNDZ29nSUNBZ1kyOXVjM1FnWm5KaGJXVmZaSFZ5WVhScGIyNGdQU0F4THpNd0NpQWdJQ0JqYjI1emRDQmxlSFJ5WVdOMFgyWnlZVzFsWDJOdmRXNTBJRDBnTXpBdkx6RWdMeUJtY21GdFpWOWtkWEpoZEdsdmJnb2dJQ0FnYkdWMElIUnBiV1VnUFNBeE5Rb0tJQ0FnSUdOdmJuTjBJR0oxWm1abGNpQTlJR0YzWVdsMElHWmxkR05vS0FvZ0lDQWdJQ0FpYUhSMGNITTZMeTkxYm5Cclp5NWpiMjB2ZDJWaWJTMTNZWE50UURBdU5DNHhMMlJwYzNRdmQyVmliUzEzYjNKclpYSXVhbk1pQ2lBZ0lDQXBMblJvWlc0b2NpQTlQaUJ5TG1GeWNtRjVRblZtWm1WeUtDa3BDZ29nSUNBZ1kyOXVjM1FnZDI5eWEyVnlJRDBnYm1WM0lGZHZjbXRsY2lnS0lDQWdJQ0FnVlZKTUxtTnlaV0YwWlU5aWFtVmpkRlZTVENodVpYY2dRbXh2WWloYlluVm1abVZ5WFN3Z2V5QjBlWEJsT2lBaWRHVjRkQzlxWVhaaGMyTnlhWEIwSWlCOUtTa0tJQ0FnSUNrS0NpQWdJQ0JzWlhRZ1pXNWpiMlJsWkY5a1lYUmhJRDBnVzEwS0lDQWdJR3hsZENCemRHRnlkRjkwYVcxbElEMGdiblZzYkFvZ0lDQWdiR1YwSUhKbFlXUjVJRDBnWm1Gc2MyVUtDaUFnSUNCa2IyTjFiV1Z1ZEM1blpYUkZiR1Z0Wlc1MFFubEpaQ2dpWm05eWJTSXBMbTl1YzNWaWJXbDBJRDBnWm5WdVkzUnBiMjRvWlNsN0NpQWdJQ0FnSUdVdWNISmxkbVZ1ZEVSbFptRjFiSFFvS1FvZ0lDQWdJQ0IyYVdSbGJ6SXVjM1I1YkdVdVpHbHpjR3hoZVNBOUlDSnViMjVsSWpzS0lDQWdJQ0FnZG1sa1pXOHlMbkJoZFhObEtDa0tJQ0FnSUNBZ2NISnZaM0psYzNOaVlYSXVjM1I1YkdVdWQybGtkR2dnUFNBaU1DNDFKU0lLSUNBZ0lDQWdkR2hwY3k1eGRXVnllVk5sYkdWamRHOXlRV3hzS0NKcGJuQjFkQ0lwTG1admNrVmhZMmdvWld3Z1BUNGdaV3d1WkdsellXSnNaV1FnUFNCMGNuVmxLUW9nSUNBZ0lDQmtiMk4xYldWdWRDNW5aWFJGYkdWdFpXNTBRbmxKWkNnaWMzVmliV2wwSWlrdWRtRnNkV1VnUFNBaVpXNWpiMlJwYm1jaUNpQWdJQ0FnSUdacGJHVnpJRDBnWkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9JbVpwYkdVaUtTNW1hV3hsY3dvZ0lDQWdJQ0J6ZEdGeWRDZ3BDaUFnSUNCOUNnb2dJQ0FnWm5WdVkzUnBiMjRnWW14dllsUnZSR0YwWVZWU1RDaGliRzlpTENCallXeHNZbUZqYXlrZ2V3b2dJQ0FnSUNCeVpYUjFjbTRnYm1WM0lGQnliMjFwYzJVb2NtVnpiMngyWlNBOVBpQjdDaUFnSUNBZ0lDQWdkbUZ5SUdFZ1BTQnVaWGNnUm1sc1pWSmxZV1JsY2lncENpQWdJQ0FnSUNBZ1lTNXZibXh2WVdRZ1BTQm1kVzVqZEdsdmJpaGxLU0I3Q2lBZ0lDQWdJQ0FnSUNCeVpYTnZiSFpsS0dVdWRHRnlaMlYwTG5KbGMzVnNkQ2tLSUNBZ0lDQWdJQ0I5Q2lBZ0lDQWdJQ0FnWVM1eVpXRmtRWE5FWVhSaFZWSk1LR0pzYjJJcENpQWdJQ0FnSUgwcENpQWdJQ0I5Q2dvZ0lDQWdablZ1WTNScGIyNGdhVzVtYnlodGMyY3NJSFI1Y0dVcGV3b2dJQ0FnSUNCamIyNXpkQ0JsYkNBOUlHUnZZM1Z0Wlc1MExtTnlaV0YwWlVWc1pXMWxiblFvZEhsd1pTQTlQVDBnTWlBbUppQWlZU0lnZkh3Z0luQWlLUW9nSUNBZ0lDQmxiRnNvZEhsd1pTQTlQVDBnTXlrZ0ppWWdJbWx1Ym1WeVNGUk5UQ0lnZkh3Z0ltbHVibVZ5VkdWNGRDSmRJRDBnYlhObkNnb2dJQ0FnSUNCcFppaDBlWEJsS1hzS0lDQWdJQ0FnSUNCbGJDNW9jbVZtSUQwZ2JYTm5DaUFnSUNBZ0lIMEtDaUFnSUNBZ0lHeHZaeTVoY0hCbGJtUW9aV3dwQ2lBZ0lDQWdJR3h2Wnk1elkzSnZiR3hVYnlnd0xDQXhaVFlwQ2lBZ0lDQjlDZ29nSUNBZ1lYTjVibU1nWm5WdVkzUnBiMjRnY0hKdlkyVnpjMTkyYVdSbGJ5Z3Bld29nSUNBZ0lDQnNaWFFnWm5KaGJXVmZZMjkxYm5RZ1BTQXdDZ29nSUNBZ0lDQjJhV1JsYnk1dmJuTmxaV3RsWkNBOUlHWjFibU4wYVc5dUtHVXBJSHNLSUNBZ0lDQWdJQ0JtY21GdFpWOWpiM1Z1ZENzckNpQWdJQ0FnSUNBZ2FXNW1ieWdpWlhoMGNtRmpkQ0JtY21GdFpTQWlJQ3NnWm5KaGJXVmZZMjkxYm5RZ0t5QWlJQzhnSWlBcklHVjRkSEpoWTNSZlpuSmhiV1ZmWTI5MWJuUXBDZ29nSUNBZ0lDQWdJR04wZUM1a2NtRjNTVzFoWjJVb2RtbGtaVzhzSURBc0lEQXNJR05oYm5aaGN5NTNhV1IwYUN3Z1kyRnVkbUZ6TG1obGFXZG9kQ2s3Q2lBZ0lDQWdJQ0FnWTI5dWMzUWdhVzFoWjJWRVlYUmhJRDBnWTNSNExtZGxkRWx0WVdkbFJHRjBZU2d3TENBd0xDQmpZVzUyWVhNdWQybGtkR2dzSUdOaGJuWmhjeTVvWldsbmFIUXBDZ29nSUNBZ0lDQWdJR2xtS0daeVlXMWxYMk52ZFc1MElEd2daWGgwY21GamRGOW1jbUZ0WlY5amIzVnVkQ2w3Q2lBZ0lDQWdJQ0FnSUNCMGFXMWxJQ3M5SUdaeVlXMWxYMlIxY21GMGFXOXVDaUFnSUNBZ0lDQWdJQ0IwYUdsekxtTjFjbkpsYm5SVWFXMWxJRDBnVFdGMGFDNXRhVzRvVFdGMGFDNXRZWGdvTUN3Z0tIUnBiV1VnUENBd0lEOGdkR2hwY3k1a2RYSmhkR2x2YmlBNklEQXBJQ3NnZEdsdFpTa3NJSFJvYVhNdVpIVnlZWFJwYjI0cENpQWdJQ0FnSUNBZ0lDQjNiM0pyWlhJdWNHOXpkRTFsYzNOaFoyVW9hVzFoWjJWRVlYUmhMbVJoZEdFdVluVm1abVZ5TENCYmFXMWhaMlZFWVhSaExtUmhkR0V1WW5WbVptVnlYU2tLSUNBZ0lDQWdJQ0I5Wld4elpYc0tJQ0FnSUNBZ0lDQWdJSGR2Y210bGNpNXdiM04wVFdWemMyRm5aU2h1ZFd4c0tRb2dJQ0FnSUNBZ0lIMEtJQ0FnSUNBZ2ZRb2dJQ0FnZlFvS0lDQWdJR1oxYm1OMGFXOXVJSFJ2ZEdGc1gzUnBiV1VvYzNSaGNuUXBld29nSUNBZ0lDQnlaWFIxY200Z0tHNWxkeUJFWVhSbEtDa3VaMlYwVkdsdFpTZ3BJQzBnYzNSaGNuUXBJQzhnTVRBd01Bb2dJQ0FnZlFvS0lDQWdJR1oxYm1OMGFXOXVJR055WldGMFpVSjFabVpsY2xWU1RDaGlkV1ptWlhJc0lIUjVjR1VnUFNBbkp5a2dld29nSUNBZ0lDQnlaWFIxY200Z1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaHVaWGNnUW14dllpaGJZblZtWm1WeVhTd2dlM1I1Y0dWOUtTazdDaUFnSUNCOUNnb2dJQ0FnWVhONWJtTWdablZ1WTNScGIyNGdjMmh2ZDE5a1lYUmhYM1Z5YVNoaWJHOWlLWHNLSUNBZ0lDQWdiR1YwSUdKc2IySmZkWEpzSUQwZ1ZWSk1MbU55WldGMFpVOWlhbVZqZEZWU1RDaGliRzlpS1FvS0lDQWdJQ0FnYVc1bWJ5aGhkMkZwZENCaWJHOWlWRzlFWVhSaFZWSk1LR0pzYjJJcEtRb2dJQ0FnSUNCcGJtWnZLR0pzYjJKZmRYSnNMQ0F5S1FvS0lDQWdJQ0FnZG1sa1pXOHlMbk55WXlBOUlHSnNiMkpmZFhKc0NpQWdJQ0FnSUhacFpHVnZNaTV6ZEhsc1pTNWthWE53YkdGNUlEMGdJbUpzYjJOcklqc0tJQ0FnSUNBZ2RtbGtaVzh5TG5Cc1lYa29LUW9LSUNBZ0lDQWdjSEp2WjNKbGMzTmlZWEl1YzNSNWJHVXVkMmxrZEdnZ1BTQWlNVEF3SlNJS0lDQWdJQ0FnWkc5amRXMWxiblF1WjJWMFJXeGxiV1Z1ZEVKNVNXUW9JbVp2Y20waUtTNXlaWE5sZENncENpQWdJQ0FnSUdSdlkzVnRaVzUwTG1kbGRFVnNaVzFsYm5SQ2VVbGtLQ0p6ZFdKdGFYUWlLUzUyWVd4MVpTQTlJQ0psYm1OdlpHVWlDaUFnSUNBZ0lHUnZZM1Z0Wlc1MExuRjFaWEo1VTJWc1pXTjBiM0pCYkd3b0ltWnZjbTBnYVc1d2RYUWlLUzVtYjNKRllXTm9LR1ZzSUQwK0lHVnNMbVJwYzJGaWJHVmtJRDBnWm1Gc2MyVXBDaUFnSUNCOUNnb2dJQ0FnZDI5eWEyVnlMbTl1YldWemMyRm5aU0E5SUdaMWJtTjBhVzl1S0dVcGV3b2dJQ0FnSUNCcFppZ2haUzVrWVhSaEtTQjdDaUFnSUNBZ0lDQWdjbVYwZFhKdUNpQWdJQ0FnSUgwS0NpQWdJQ0FnSUdsbUtHVXVaR0YwWVNBaFBTQnVkV3hzSUNZbUlIUjVjR1Z2WmlCbExtUmhkR0VnUFQwZ0ltOWlhbVZqZENJZ0ppWWdaUzVrWVhSaExtSjVkR1ZNWlc1bmRHZ2dQaUF3S1hzS0lDQWdJQ0FnSUNCbGJtTnZaR1ZrWDJSaGRHRXVjSFZ6YUNobExtUmhkR0VwQ2lBZ0lDQWdJQ0FnYVc1bWJ5Z2laVzVqYjJSbElDSWdLeUJsYm1OdlpHVmtYMlJoZEdFdWJHVnVaM1JvSUNzZ0lpQXZJQ0lnS3lCbGVIUnlZV04wWDJaeVlXMWxYMk52ZFc1MEtRb2dJQ0FnSUNBZ0lIQnliMmR5WlhOelltRnlMbk4wZVd4bExuZHBaSFJvSUQwZ2NHRnljMlZKYm5Rb0tHVnVZMjlrWldSZlpHRjBZUzVzWlc1bmRHZ2dMeUJsZUhSeVlXTjBYMlp5WVcxbFgyTnZkVzUwS1NBcUlERXdNQ3dnTVRBcElDc2dJaVVpQ2lBZ0lDQWdJSDBLQ2lBZ0lDQWdJR2xtS0dVdVpHRjBZU0E5UFNBaVVrVkJSRmtpS1hzS0lDQWdJQ0FnSUNCcGJtWnZLQ0p5WldGa2VTSXNJR05oYm5aaGN5NTNhV1IwYUN3Z1kyRnVkbUZ6TG1obGFXZG9kQ2tLQ2lBZ0lDQWdJQ0FnZDI5eWEyVnlMbkJ2YzNSTlpYTnpZV2RsS0hzS0lDQWdJQ0FnSUNBZ0lIZHBaSFJvT2lCallXNTJZWE11ZDJsa2RHZ3NDaUFnSUNBZ0lDQWdJQ0JvWldsbmFIUTZJR05oYm5aaGN5NW9aV2xuYUhRc0NpQWdJQ0FnSUNBZ0lDQnlaV0ZzZEdsdFpUb2dkSEoxWlN3S0lDQWdJQ0FnSUNBZ0lHSnBkSEpoZEdVNklERXdNQW9nSUNBZ0lDQWdJSDBwQ2dvZ0lDQWdJQ0FnSUM4dlptOXlLR3hsZENCcElEMGdNRHNnYVNBOElHWnlZVzFsY3k1c1pXNW5kR2c3SUdrckt5bDdDaUFnSUNBZ0lDQWdMeThnSUhkdmNtdGxjaTV3YjNOMFRXVnpjMkZuWlNobWNtRnRaWE5iYVYwc0lGdG1jbUZ0WlhOYmFWMWRLUW9nSUNBZ0lDQWdJQzh2ZlFvS0lDQWdJQ0FnSUNCeVpXRmtlU0E5SUhSeWRXVUtJQ0FnSUNBZ0lDQndjbTlqWlhOelgzWnBaR1Z2S0NrS0lDQWdJQ0FnZlFvZ0lDQWdJQ0JsYkhObElHbG1LSEpsWVdSNUtYc0tJQ0FnSUNBZ0lDQnBaaWhsTG1SaGRHRXVZbmwwWlV4bGJtZDBhQ0E5UFNBd0tYc0tJQ0FnSUNBZ0lDQWdJR2x1Wm04b0ltVnVZMjlrYVc1bklHWnBibWx6YUdWa0lDaGtkWEpoZEdsdmJqb2dJaUFySUhCaGNuTmxTVzUwS0hSdmRHRnNYM1JwYldVb2MzUmhjblJmZEdsdFpTa3NJREV3S1NBckNpQWdJQ0FnSUNBZ0lDQWdJQ0lnY3l3Z2MzQmxaV1E2SUNJZ0t5QndZWEp6WlVsdWRDaDBiM1JoYkY5MGFXMWxLSE4wWVhKMFgzUnBiV1VwSUM4Z1pYaDBjbUZqZEY5bWNtRnRaVjlqYjNWdWRDd2dNVEFwSUNzaUlITWdMeUJtY21GdFpTa2lLUW9nSUNBZ0lDQWdJQ0FnYkdWMElHSnNiMklnUFNCdVpYY2dRbXh2WWlobGJtTnZaR1ZrWDJSaGRHRXNJSHNnZEhsd1pUb2dKM1pwWkdWdkwzZGxZbTBuSUgwcENpQWdJQ0FnSUNBZ0lDQnphRzkzWDJSaGRHRmZkWEpwS0dKc2IySXBDaUFnSUNBZ0lDQWdmUW9nSUNBZ0lDQjlDaUFnSUNCOUNnb2dJQ0FnWm5WdVkzUnBiMjRnYkc5aFpGOTJhV1JsYnlncGV3b2dJQ0FnSUNCeVpYUjFjbTRnYm1WM0lGQnliMjFwYzJVb2NtVnpiMngyWlNBOVBpQjdDaUFnSUNBZ0lDQWdkbWxrWlc4dWMzSmpJRDBnVlZKTUxtTnlaV0YwWlU5aWFtVmpkRlZTVENobWFXeGxjMXN3WFNrS0NpQWdJQ0FnSUNBZ2RtbGtaVzh1YjI1c2IyRmtaV1J0WlhSaFpHRjBZU0E5SUdaMWJtTjBhVzl1S0NrZ2V3b2dJQ0FnSUNBZ0lDQWdZMkZ1ZG1GekxtaGxhV2RvZENBOUlIWnBaR1Z2TG5acFpHVnZTR1ZwWjJoMENpQWdJQ0FnSUNBZ0lDQmpZVzUyWVhNdWQybGtkR2dnUFNCMmFXUmxieTUyYVdSbGIxZHBaSFJvQ2lBZ0lDQWdJQ0FnSUNCMGFHbHpMbU4xY25KbGJuUlVhVzFsSUQwZ1RXRjBhQzV0YVc0b1RXRjBhQzV0WVhnb01Dd2dLSFJwYldVZ1BDQXdJRDhnZEdocGN5NWtkWEpoZEdsdmJpQTZJREFwSUNzZ2RHbHRaU2tzSUhSb2FYTXVaSFZ5WVhScGIyNHBDaUFnSUNBZ0lDQWdJQ0J5WlhOdmJIWmxLQ2tLSUNBZ0lDQWdJQ0I5Q2lBZ0lDQWdJSDBwQ2lBZ0lDQjlDZ29nSUNBZ1lYTjVibU1nWm5WdVkzUnBiMjRnYzNSaGNuUW9LWHNLSUNBZ0lDQWdjM1JoY25SZmRHbHRaU0E5SUc1bGR5QkVZWFJsS0NrdVoyVjBWR2x0WlNncENpQWdJQ0FnSUhkcGJtUnZkeTV6ZEdGeWRGOTBhVzFsSUQwZ2MzUmhjblJmZEdsdFpRb2dJQ0FnSUNCaGQyRnBkQ0JzYjJGa1gzWnBaR1Z2S0NrS0lDQWdJQ0FnZDI5eWEyVnlMbkJ2YzNSTlpYTnpZV2RsS0NKb2RIUndjem92TDNWdWNHdG5MbU52YlM5M1pXSnRMWGRoYzIxQU1DNDBMakV2WkdsemRDOTNaV0p0TFhkaGMyMHVkMkZ6YlNJcENpQWdJQ0I5Q2lBZ0lDQThMM05qY21sd2RENEtJQ0E4TDJKdlpIaytDand2YUhSdGJENEs8L3A+CiAgICA8L21haW4+CiAgICA8Zm9vdGVyPjwvZm9vdGVyPgogICAgPHNjcmlwdD4KICAgIGRvY3VtZW50Lm9uY2xpY2sgPSBmdW5jdGlvbihlKXsKICAgICAgaWYoIWUudGFyZ2V0LmNsYXNzTGlzdC5jb250YWlucygiZGF0YSIpKXsKICAgICAgICBmb3IobGV0IGRhdGF1cmkgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgicC5kYXRhIikpewogICAgICAgICAgZGF0YXVyaS5jbGFzc0xpc3QucmVtb3ZlKCJzY3JvbGwiKQogICAgICAgIH0KICAgICAgfQogICAgfQoKICAgIGZvcihsZXQgZGF0YXVyaSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJwLmRhdGEiKSl7CgogICAgICBkYXRhdXJpLm9uY2xpY2sgPSBmdW5jdGlvbigpewogICAgICAgIGNvbnN0IHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKQogICAgICAgIHJhbmdlLnNlbGVjdE5vZGUodGhpcykKICAgICAgICBnZXRTZWxlY3Rpb24oKS5yZW1vdmVBbGxSYW5nZXMoKQogICAgICAgIGdldFNlbGVjdGlvbigpLmFkZFJhbmdlKHJhbmdlKQogICAgICAgIHRoaXMuY2xhc3NMaXN0LmFkZCgic2Nyb2xsIikKICAgICAgfQogICAgLy8gIGRhdGF1cmkub253aGVlbCA9IGZ1bmN0aW9uKGUpewogICAgLy8gICAgLy9lLnByZXZlbnREZWZhdWx0KCkKICAgIC8vICAgIGNvbnNvbGUubG9nKCJ3aGVlbCIpCiAgICAvLyAgfQogICAgfQogICAgPC9zY3JpcHQ+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==

#wired #wiredapp #standaloneapp updated source code for building datauri compatible release

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#0459bf5c4ce01f95e2a0ca581e738f1365aaf39d328c33d661a6171794f494f9/inline/quiet

here is direct link for #filepublish

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=filepublish.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K

bootstrap wiredapp from datauri

#wired #wiredapp #p2p #decentralized #datauri #stadaloneapp #serverless #hostr #nostr #pow

data:text/html;base64,PCFkb2N0eXBlIGh0bWw+PGh0bWwgbGFuZz0iZW4iPjxoZWFkPjxtZXRhIGNoYXJzZXQ9InV0Zi04Ii8+PG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCxpbml0aWFsLXNjYWxlPTEiLz48bWV0YSBuYW1lPSJ0aGVtZS1jb2xvciIgY29udGVudD0iIzAwMDAwMCIvPjxtZXRhIG5hbWU9Im1vYmlsZS13ZWItYXBwLWNhcGFibGUiIGNvbnRlbnQ9InllcyIvPjxtZXRhIG5hbWU9ImFwcGxlLXRvdWNoLWZ1bGxzY3JlZW4iIGNvbnRlbnQ9InllcyIvPjxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLXRpdGxlIiBjb250ZW50PSJFeHBvIi8+PG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtY2FwYWJsZSIgY29udGVudD0ieWVzIi8+PG1ldGEgbmFtZT0iYXBwbGUtbW9iaWxlLXdlYi1hcHAtc3RhdHVzLWJhci1zdHlsZSIgY29udGVudD0iZGVmYXVsdCIvPjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJUaGUgV2lyZWQiLz48dGl0bGU+VGhlIFdpcmVkPC90aXRsZT48L2hlYWQ+PGJvZHk+PG5vc2NyaXB0PllvdSBuZWVkIHRvIGVuYWJsZSBKYXZhU2NyaXB0IHRvIHJ1biB0aGlzIGFwcC48L25vc2NyaXB0PjxkaXYgaWQ9InJvb3QiPjwvZGl2PjxzY3JpcHQ+Cihhc3luYyBmdW5jdGlvbigpewogIGFzeW5jIGZ1bmN0aW9uIGRnZXQoaWQsIHJlbGF5KXsKICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gewogICAgICBjb25zdCBzb2NrZXQgPSBuZXcgV2ViU29ja2V0KHJlbGF5KQogICAgICBsZXQgZmlsZV9kYXRhID0gW10KICAgICAgbGV0IGZpbGVpZHMgPSBbXQoKICAgICAgc29ja2V0Lm9ub3BlbiA9IGZ1bmN0aW9uKCl7CiAgICAgICAgc29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkoWyJSRVEiLCAiZmlsZWlkcyIsIHsiaWRzIjogW2lkXX1dKSkKICAgICAgfQoKICAgICAgc29ja2V0Lm9ubWVzc2FnZSA9IGFzeW5jIGZ1bmN0aW9uKGUpewogICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGUuZGF0YSkKCiAgICAgICAgaWYoZGF0YVswXSA9PT0gIkVWRU5UIiAmJiBkYXRhWzFdID09PSAiZmlsZWlkcyIpewogICAgICAgICAgZmlsZWlkcy5wdXNoKC4uLkpTT04ucGFyc2UoZGF0YVsyXS5jb250ZW50KS5maWxlaWRzKQogICAgICAgICAgc29ja2V0LnNlbmQoSlNPTi5zdHJpbmdpZnkoWyJSRVEiLCAicGFydHMiLCB7ImlkcyI6IGZpbGVpZHMsICJsaW1pdCI6IDMwMDB9XSkpCiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoZGF0YVswXSA9PT0gIkVWRU5UIiAmJiBkYXRhWzFdID09PSAicGFydHMiKXsKICAgICAgICAgIGNvbnN0IG1hdGNoID0gZGF0YVsyXS5jb250ZW50Lm1hdGNoKC9ecGFydChcZHsxLDR9KTsoXGR7MSw0fSk7W2EtejAtOV0rOy8pCgogICAgICAgICAgaWYobWF0Y2gpewogICAgICAgICAgICBjb25zdCBwYXJ0X2RhdGEgPSBkYXRhWzJdLmNvbnRlbnQuc3Vic3RyKG1hdGNoWzBdLmxlbmd0aCkKICAgICAgICAgICAgZmlsZV9kYXRhLnB1c2goW3BhcnNlSW50KG1hdGNoWzFdLCAxMCksIHBhcnRfZGF0YV0pCiAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgZmlsZV9kYXRhLnB1c2goWzEsIGRhdGFbMl0uY29udGVudF0pCiAgICAgICAgICB9CgogICAgICAgICAgaWYoZmlsZV9kYXRhLmxlbmd0aCA9PT0gZmlsZWlkcy5sZW5ndGgpewogICAgICAgICAgICBmaWxlX2RhdGEgPSBmaWxlX2RhdGEuc29ydCgoYSwgYikgPT4gYVswXSAtIGJbMF0pLm1hcChlID0+IGVbMV0pCiAgICAgICAgICAgIGNvbnN0IGRhdGF1cmkgPSAiZGF0YToiICsgZmlsZV9kYXRhLmpvaW4oIiIpCiAgICAgICAgICAgIGNvbnN0IGJsb2IgPSBhd2FpdCAoYXdhaXQgZmV0Y2goZGF0YXVyaSkpLmJsb2IoKQogICAgICAgICAgICByZXNvbHZlKGJsb2IpCiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICB9KQogIH0KCiAgY29uc3Qgd29ya2VyX3NvdXJjZSA9IGF3YWl0IGRnZXQoImZlZWNlYTAxZmU2ZDkyMGU5ZjU2M2U5OWU1MjdhMmE1MjVlODQwOTUyN2ViMjc3Yzk0ZDJlOTA3MzRkYzRjNTAiLCAid3NzOi8vbm9zLmxvbCIpCiAgY29uc3Qgd29ya2VyXzU5Ml91cmwgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGF3YWl0IGRnZXQoImZlMGVhNjA2ODBiMTYwYjYyN2M0YmYzNThlMDk1YWZhMTcxNWJhMTlhNWI5YzkwOTYzMGQ1MmQzZTQzMjQ3MmMiLCAid3NzOi8vbm9zLmxvbCIpKQogIGNvbnN0IGljb25fcG5nX3VybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYXdhaXQgZGdldCgiMDVkZTM0ZWE5MDkyMmVlOTQxMDUzYzQzYjUwMGRhYTE0ODRlMWY3MzM2M2ZjNWRhNzIyMzRiNDAzYjk3NzM3OCIsICJ3c3M6Ly9ub3MubG9sIikpCiAgY29uc3QgbWFpbl9qc19tYXBfdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChhd2FpdCBkZ2V0KCI1NWVkNDdiMjk0NzJkZTE4Y2I3MWQ0M2NjOGNmZmU3NTcwNzJmNDA3Y2ZlOGNlYjRkMDQyNDdiZGU0NDc1M2VlIiwgIndzczovL25vcy5sb2wiKSkKCiAgbGV0IHdvcmtlcl9zb3VyY2Vfc3RyID0gYXdhaXQgd29ya2VyX3NvdXJjZS50ZXh0KCkKICB3b3JrZXJfc291cmNlX3N0ciA9IHdvcmtlcl9zb3VyY2Vfc3RyLnJlcGxhY2UoJ2ltcG9ydFNjcmlwdHModC5wK3QudShyKSknLCAnaW1wb3J0U2NyaXB0cygiJyArIHdvcmtlcl81OTJfdXJsICsgJyIpJykKICBjb25zdCB3b3JrZXJfdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChuZXcgQmxvYihbd29ya2VyX3NvdXJjZV9zdHJdLCB7dHlwZTogInRleHQvamF2YXNjcmlwdCJ9KSkKCiAgY29uc3Qgb3JpZ2luYWxXb3JrZXJDb25zdHJ1Y3RvciA9IFdvcmtlcjsKCiAgV29ya2VyID0gZnVuY3Rpb24odXJsKSB7CiAgICB1cmwgPSB3b3JrZXJfdXJsCiAgICByZXR1cm4gbmV3IG9yaWdpbmFsV29ya2VyQ29uc3RydWN0b3IodXJsKTsKICB9CgogIFVSTCA9IGNsYXNzIE15VVJMIGV4dGVuZHMgVVJMIHsKICAgIGNvbnN0cnVjdG9yKGlucHV0KSB7CiAgICAgIHN1cGVyKGlucHV0LmluZGV4T2YoIi8iKSA9PT0gMCAmJiAobG9jYXRpb24ucHJvdG9jb2wgKyBsb2NhdGlvbi5wYXRobmFtZSArIGlucHV0KSB8fCBpbnB1dCk7CiAgICB9CiAgfQoKICBkYXRhTG9jYWxTdG9yYWdlID0gewogICAgZ2V0SXRlbTogZnVuY3Rpb24oKXt9LAogICAgc2V0SXRlbTogZnVuY3Rpb24oKXt9CiAgfQoKICBjb25zdCBzY3JpcHRzID0gWwogICAgIjE1NDNhMDcwYTQyZThlMGMwNTg2MTg0MGJkZTdlNWI2OTFjNGI1ZGVjNjYyNzQ1ODUyYzIyODNjZmVmZDhjYTUiCiAgXQoKICBjb25zdCBzdHlsZXMgPSBbCiAgICAiNjk5NjA3NzRjZTZkZmE4MzFhMzMwODczNDEyNWQ4MGRlMjY5YTg0ZjU5ODg4YTdkMzEyMTVlYTFhYzU1MTE1MiIKICBdCgogIGNvbnN0IHNjcmlwdF9pZCA9IHNjcmlwdHNbMF0KICBjb25zdCBzY3JpcHRfc291cmNlID0gYXdhaXQgZGdldChzY3JpcHRfaWQsICJ3c3M6Ly9ub3MubG9sIikKICBsZXQgc2NyaXB0X3NvdXJjZV9zdHIgPSBhd2FpdCBzY3JpcHRfc291cmNlLnRleHQoKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZSgiL2ljb24ucG5nIiwgaWNvbl9wbmdfdXJsKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZSgvKHNvdXJjZU1hcHBpbmdVUkw9KShtYWluXC5bYS16MC05XXs4fVwuanNcLm1hcCkvLCAiJDFodHRwOi8vbG9jYWxob3N0OjgwMDAvJDIiKQogIHNjcmlwdF9zb3VyY2Vfc3RyID0gc2NyaXB0X3NvdXJjZV9zdHIucmVwbGFjZUFsbCgibG9jYWxTdG9yYWdlIiwgImRhdGFMb2NhbFN0b3JhZ2UiKQoKICBjb25zdCBzY3JpcHRfZWwgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKQogIHNjcmlwdF9lbC5zcmMgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKG5ldyBCbG9iKFtzY3JpcHRfc291cmNlX3N0cl0sIHt0eXBlOiAidGV4dC9qYXZhc2NyaXB0In0pKQogIGNvbnNvbGUubG9nKCJzY3JpcHRfZWwuc3JjIiwgc2NyaXB0X2VsLnNyYykKICBkb2N1bWVudC5ib2R5LmFwcGVuZChzY3JpcHRfZWwpCgogIGZvcihsZXQgc3R5bGVfaWQgb2Ygc3R5bGVzKXsKICAgIGNvbnN0IHN0eWxlX3NvdXJjZSA9IGF3YWl0IGRnZXQoc3R5bGVfaWQsICJ3c3M6Ly9ub3MubG9sIikKICAgIGNvbnN0IHN0eWxlX2VsID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpCiAgICBzdHlsZV9lbC5yZWwgPSAic3R5bGVzaGVldCIKICAgIHN0eWxlX2VsLmhyZWYgPSBVUkwuY3JlYXRlT2JqZWN0VVJMKGF3YWl0IHN0eWxlX3NvdXJjZSkKICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kKHN0eWxlX2VsKQogIH0KfSkoKQo8L3NjcmlwdD4KPC9ib2R5PjwvaHRtbD4K

#wired #wiredapp standalone version source code here

wip

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#5a89379d7a65f16fc4034a60f77086d3068dafe77e71aeea28cf533fa510cd7e/inline/quiet

#wired #wiredapp

wip

there webworkers are bit difficult (posting does not work)

http://bafkreigjwik74seutskr6mbibubphu26vhhrbz4d3lyffn5eeymtldd2ci.ipfs.cf-ipfs.com/

Replying to Avatar b

dget_example.html

dget is super simple way to load content from nostr

here is simple example

upload two images, ~2MB each:

node ~/filepublish.mjs pic1.png -Q

node ~/filepublish.mjs pic2.png -Q

fetch images:

await dget("id1", "wss://nos.lol")

await dget("id2", "wss://nos.lol")

full html example:

https://ipfs.io/ipfs/QmZahCwYgGmfU1mMnGCNWyivZaiqt6iL12fLtm8s8eg4WP

full html example source:

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#8ed91c8dd15e236b896231e84d20263c55bfc2d130d358f5284ac3b38cf654f0/inline/quiet

#dget #dget_example

embedding image is simple as this:

dget_example.html

dget is super simple way to load content from nostr

here is simple example

upload two images, ~2MB each:

node ~/filepublish.mjs pic1.png -Q

node ~/filepublish.mjs pic2.png -Q

fetch images:

await dget("id1", "wss://nos.lol")

await dget("id2", "wss://nos.lol")

full html example:

https://ipfs.io/ipfs/QmZahCwYgGmfU1mMnGCNWyivZaiqt6iL12fLtm8s8eg4WP

full html example source:

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#8ed91c8dd15e236b896231e84d20263c55bfc2d130d358f5284ac3b38cf654f0/inline/quiet

#dget #dget_example

find . -type f | while read f; do newfile=$(node ~/filepublish.mjs "$f" -Q); echo "/${f:2}|$newfile"; done

/512_tao.png|7ccc02f1666384be5fc505d96c18a9a720ab8e92352ff42fcd8b33c6f9680e8e

/favicon.gif|3a996c7bd79720f727a82ace8db1304bebac0ac5ec3d64ed9bfdcaa1651789bf

...

await dget("7ccc02f1666384be5fc505d96c18a9a720ab8e92352ff42fcd8b33", "wss://nos.lol")

#dget #dgetjs #dgethtml

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#bca68da18eb94dcf0d064b4f91f046e9d6b7366d36023dcd1b350eab55193984/inline/quiet

#filepublishmjs #filepublishnode #filepublish

upload:

node filepublish.mjs hello.txt

in browser js app, get blob uri:

await dget("id", "relay")

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#759233efbf69c7961295a27b157afdf02bb6234a61f718d6b11b6c679e3698a8/inline/quiet

#filepublishmjs #filepublishnode #filepublish

node filepublish.mjs hello.txt

data:text/html;r=nos.lol;k=01b0b1960ffe89eaa11e67ca999d832e55350dd17c0ea9eeee1d5d6ac6f0fdd4;f=fileloader.html;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K#c5737824ae1c74c8bd11c28fcb4c5822be65a78bf57cccfdc215c75165b6404a/inline/quiet

Replying to Avatar b

so here are steps for doing #decentralized #web #apps

if you want to use react (because your boss told you its necessary)

- use hashrouter https://reactrouter.com/en/main/router-components/hash-router

- make datauri, like this:

"data:text/html;base64,"$(cat index.html | base64 -w 0)

your app can now be shared without http server

when you need more content, upload it to relays. for small files less than 100 kB #hostr or other simple way of using event content is ok. if there is need for larger files, #filepublish #fileloader #dget gets the job done.

i highly recommend using vanilla js, as your codebase can be 1/100th of the size compared to react app.

for bootstrapping content from #hostr with short #datauri, you can use hostr loader like this:

r = relay

k = pubkey

f = d_tag

rest of the #code is #javascript code for loading content from #nostr event

data:text/html;r=nos.lol;k=2b8d50fcc974ffb652c0ab33edebb6a9ce72cd154591969592bc8b607a4ea1f2;f=ourchan;base64,PHNjcmlwdD4KKCgpID0+IHsKICBjb25zdCByID0gIndzczovLyIgKyBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87cj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGsgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87az0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQogIGNvbnN0IGYgPSBsb2NhdGlvbi5ocmVmLm1hdGNoKC9kYXRhOlxTKz87Zj0oW147XSspXFMqO2Jhc2U2NCwvKVsxXQoKICBkb2N1bWVudC53cml0ZSgiPHA+Y29ubmVjdGluZyB0byAiICsgciArICI8L3A+IikKICBjb25zdCBzID0gbmV3IFdlYlNvY2tldChyKQoKICBzLm9ub3BlbiA9ICgpID0+IHsKICAgIHMuc2VuZCgnWyJSRVEiLCAicSIsIHsiYXV0aG9ycyI6IFsiJyArIGsgKyAnIl0sICIjZCI6IFsiJyArIGYgKyAnIl19XScpCiAgfQoKICBzLm9ubWVzc2FnZSA9IGFzeW5jIChlKSA9PiB7CiAgICBzLmNsb3NlKCkKICAgIGRvY3VtZW50LndyaXRlKEpTT04ucGFyc2UoZS5kYXRhKVsyXS5jb250ZW50KQoKICAgIHdoaWxlKCF3aW5kb3cubG9hZGVkKXsKICAgICAgYXdhaXQgbmV3IFByb21pc2UoYyA9PiBzZXRUaW1lb3V0KGMsIDEwKSkKICAgIH0KCiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudCgibG9hZCIpKQogIH0KfSkoKQo8L3NjcmlwdD4K

so here are steps for doing #decentralized #web #apps

if you want to use react (because your boss told you its necessary)

- use hashrouter https://reactrouter.com/en/main/router-components/hash-router

- make datauri, like this:

"data:text/html;base64,"$(cat index.html | base64 -w 0)

your app can now be shared without http server

when you need more content, upload it to relays. for small files less than 100 kB #hostr or other simple way of using event content is ok. if there is need for larger files, #filepublish #fileloader #dget gets the job done.

i highly recommend using vanilla js, as your codebase can be 1/100th of the size compared to react app.

its funny how web degenerated

>invent html markup language

>now everyone can make websites

>make js

>make google, facebook, youtube

>make react

>make all websites using react

>get 100x performance degradation

>fill all websites with ads

>fill all websites with cookie popups

>now everyone uses only 3 website for all their web surfing needs

could as well have downloaded 3 native apps instead of even inventing html and js

we could be running pentium 3 machines and get same performance today, websites were built with vanillajs rather than react which adds 100x overhead in filesize and probably 10x overhead in performance