@aztec/accounts 3.0.0-nightly.20251212 → 3.0.0-nightly.20251214

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1906,7 +1906,7 @@
1906
1906
  }
1907
1907
  },
1908
1908
  "bytecode": "H4sIAAAAAAAA/+y9C7wV0///v3en0ym6SOVOO6SSVBKSVJJKkiSS7lele0khlSRJVJIkKklCklBJCAmVJElIQm6hXEJI/3mxj/bZJnve65x57e/r//vM47HOnKaZs97v57rMe2bWeq1o5O8tFt+3a9fh2oFdOrXr3b9d994Du/Tv3aHngHbtuvQe2H9I3z7ekR/KRiIvH/v3uVEvZcT3+eJ/I/FY9j7x9+I+55XwUp2kY4d4aXjSsUN9jh3l8/eO9jl2jM+x0j7HYj55lPE5dqzPseN8jh3vk8cJPsfK+7Cq4HPsRJ9jJ/n8vZN9zqvsc6yKz7FTfP7eqT7nVfc5dprPsTN8/t6ZPufV9Dl2ls+xs33+Xh2f8+r6HDvH59i5XiqYdKx+fJ8/EmCLxvex+L5K5wv7b606o8Lii+o/M2JEyzblq33ZcMiSvhPqbd11507v/1dn7Ds3xXZSbvJZkzqfYxP/duHIPoejcTuxLxvZV3Gj8b+bfd6b3u9rvfSWl9Zl5PzjGUn2ptii5QznvpkRnMPbwXnn2Kz2lzecu9Zg/3qS/RUM575lsP8dg/1+9fDteD1cH9+/E9+vS6iHG7zf3/XSRi+9l8t6eKLh3A0GDptI5VjRcO67BvvfJ9l/kuHcjQb7P8hlPdwUr3fvx/cfxPfvJdTDD73fN3vpIy9tyWU9rGQ490MDh49J5Xiy4dzNBvu3kuyvbDj3I4P9n+SyHn4cr3db4/tP4vstCfXwU+/3z7y0zUuf57IeVjGc+6mBwxekcqxqOPczg/1fkuw/xXDuNoP9X+WyHn4Rr3dfxvdfxfefJ9TDr73ft3vpGy99m8t6WM1w7tcGDt+RyvFUw7nbDfbvINlf3XDuNwb7d+ayHn4Xr3c74vud8f23CfXwe+/3H7z0o5d+ymU9PM1w7vcGDrtI5Xi64dwfDPb/TLL/DMO5Pxrs/yWX9XBXvN79HN//Et//lFAPf/V+3+2l37z0ey7rYQ3Dub8aOPxBKsczDefuNti/h2R/TcO5vxns/zOX9fCPeL3bE9//Gd//nlAP92b8fVHUS/mS3nJZOZxlOHevgUNGfk451jKcG8kf3P78JPvPNpwbNdifmT939RDlh33++D4zvkd9yz6vgPdLlpcKeqlQLuthbcO5BQwcDiCVYx3DuVkG+w8k2V/XcG5Bg/2Fc1kPD4jXuwPj+8LxfaGEeljE+6Wol4p56aBc1sNzDOcWMXAoTirHeoZzixrsP5hk/7mGc4sZ7C+Ry3pYPF7vDo7vS8T3ByXUw5LeL6W8dIiXDs1lPaxvOLekgcNhueRwWNzvUvH9IfH9oQkcDvd+OcJLR3rpqCQO+eL7WCSYCSUiwX07Oqhv0WbD/7rHxX3CdXUiubPzeIOdxwQvg2iindnX5Y//O+p3gdHuaPBz9/MXkjJM5Xzp4M4fm5t8YqnziSX+7eSKXjpesZM/oMYSKnoZ75djvXScl47PZYO3fEAtY2jwZUkdt+UD6rEG+08g2W/5gHqcwf5yuexwy8br4Qnxfbn4/viEelje+6WCl070UsVc1kPLB9TyBg4nkcrR8gG1gsH+SiT7LR9QTzTYf3Iu6+FJ8XpXKb4/Ob6vmFAPK3u/VPFSVS+dkst6aPmAWtnAoRqpHC0fUKsY7D+VZL/lA2pVg/3Vc1kPq8Xr3anxffX4/pSEenia98vpXjrDSzVyWQ8tH1BPM3A4k1SOlg+opxvsr0my3/IB9QyD/Wflsh6eGa93NeP7s+L7Ggn1sJb3y9leqo0HjFzWQ8sH1FoGDnVJ5Wj5gHq2wf5zSPZbPqDWNthfL5f1sG683p0T39eL7+sk1MNzvV/qe+k8LzXIZT20fEA918ChIakcLR9Q6xvsb0Sy3/IB9TyD/efnsh42jNe7RvH9+fF9g4R62Nj75QIvNfHShbmsh5YPqI0NHJqSytHyAfUCg/0Xkey3fEBtYrC/WS7rYdN4vbsovm8W31+YUA8v9n5p7qVLvNQil/XQ8gH1YgOHS0nlaPmA2txg/2Uk+y0fUC8x2N8yl/Xw0ni9uyy+bxnft0ioh5d7v7Ty0hVeap3Lemj5gHq5gUMbUjnWMZzbymB/W5L9dQ3nXmGwv10u62GbeL1rG9+3i+9bJ9TD9t4vHbzU0UudclkPLR9Q2xs4dCaVo+UDageD/V1yWY6d4+XWJb7vGN93SijHrt4v3bx0pZe6x4/ni+TNh6KuBvuLJvzeI27cVfF9z/i+V3zfO77vE9/3je/7xff94/sB8f3A+P7q7OeceD6DvH9f46XBXhripWu9dJ2XrvfSUC/d4KVhXhrupRFeutFLI710k5dGeelmL4320i1eGuOlW7001ku3eWmcl2730h1eGu+lCV6a6KU7vTTJS3d5abKX7vbSFC/d46WpXrrXS9O8dJ+X7vfSdC/N8NJMLz3gpVleetBLs730kJfmeOlhL8310iNeetRLj3lpnpce99J8Lz3hpQVeetJLC730lJeejjN5BntAyf5i2DP/vi+F2cf6+Bzr73Psap9jgJw83fIan2ODfY4N8Tl2rc+x63yOXe9zbKjPsRt8jg3zOTbc59gIn2M3+hwb6XPsJp9jo3yO3exzbLTPsVt8jo3xOXarz7GxPsdu8zk2zufY7T7H7vA5Nt7n2ASfYxN9jt3pc2ySz7G7fI5N9jl2t8+xKT7H7vE5NtXn2L0+x6b5HLvP59j9Psem+xyb4XNsps+xB3yOzfI59qDPsdk+xx7yOTbH59jDPsfm+hx7xOfYoz7HHvM5Ns/n2OM+x+b7HHvC59gCn2NP+hxb6HPsKZ9jT8ePoU8tHNkXSCRu0fg+Fgm0mW6iflssF6fFIkG26D8+RROuWeTZvdhLS7z0rJeWeuk5Ly3z0vNeesFLL3ppuZde8tLLXnrFSyu89KqXVnrpNS+97qU3vLTKS6u9tMZLb3pprZfe8tI6L73tpfVeesdLG7z0bvJNbZFPYS32ObbE59izPseW+hx7zufYMp9jz/sce8Hn2Is+x5b7HHvJ59jLPsde8Tm2wufYqz7HVvoce83n2Os+x97wObbK59hqn2NrfI696XNsrc+xt3yOrfM59rbPsfU+x97xObbB59i78WOJW5n4PhYJtOVo9KmeEhYFPHfH3r3RxYHPjUSXBD3Xs/fZYOdO9OyNLg107k/wLfpckHM//otDdFmAc8/5m1n0+dTnjo/zjb6Q8tw+2WURfTHVuYv/Kbfo8hTnDt5XxtGX/vvcBgn1Ifryf577RWLdib7yX+eekqOeRVf8x7nlctbJ6Kv7P7d1Uv2NrtzvuZcl1/Xoa/s7d/i/2kX09f2cO/zfbSj6hv+5T/u0t+gq33PP9Wub0dV+5zb1bcfRNT7nLvJv89E3/31u+f30D9G1/zp3+v76kuhbyedW2W+/E12XdO7H+++jom/nPLfff/Rn0fU5zm3yX31f9J3Eczv9Zz8Z3ZBwbuX/7lOj7xqCLsQaRSL7ArvEzRrsvRu8L1+XmN/G/LnIEBcnj11OlfnG4ICi7xluZq4+II+o0Yf3jIWMV1T5/AxIyjeIvQHPfcvvYCwSKJsctm6KV5D3kyPjTXFwicfe94lgrO9EDTU5uslQQd43wrMWDirFJmNl+kvsJ009xobgnO9LzO8D1x4DGX5g7zHu+8DQY3wYco8BHz609xj3fZimHmND8Hyn+R2MRQJlk8PWzfEK8lFyj7HZp8f4KA96DENNjm42VJCPHOFZKjjysdi0xdAY/vlhsOW9eAW3Tkmy3Ko/NjQGPx9SnQ5GHzv0xB+nqSd+J3j9XZiY31bXnhgZbrX3xAu3GirfJyH3xPDhE3tPvPCTXFa+IA3o45Ab0KdGH7I3a8dkKcPPDHUjL+9w7wTP90m/g7FIoGxy2Lot3vA+T77DbfO5w32eB3c4Qw8R3WYotM8d4VkrksWmL3J5h0t1DRrPZw53hy9DvmvB7y8JdmVv1jL80lCGX4VchvvrZIN0zkHP/drYoeVVNLA+eFu/IzG/7a7RADLcbo8G7thuAPRNyNEAfPjGHg3c8U3I0QAawtf5w21s3xobW/ZmtclSht+lKRpYHzzf2/0OxiKBsslh6454w9uZHA3s8IkGduZBNGDoIaI7DIW20xGetSJZbPo+5DsJGs93DnfdH0KOBuD3DwS7sjdrGf5gKMMfQy7D/XWyqa6zdLI/pendwNvB23osMb9drtEAMtxljwZiuwyF/HPI0QB8+NkeDcR+DjkaQEP4KX+4je0XUjRgKcNf0xQNvB0839J+B2ORQNnksHV3vOH9lhwN7PaJBn7Lg2jA0ENEdxsK7TdHeNaKZLHp95DvJGg8vzrcdf8IORqA338Q7MrerGX4h6EM94RchvvrZFNdZ+lk/0xTNLAueFt/KzG/va7RADLca48G3tprKeTMcKMB+IA8jNHAW4l2BXMk+N/Pbgh/5g+3sUUzbY0te7PaZCnDfAab8jIaWBe8Tq71OxiLBMomh60ZmX/v82dGct75MzL/HQ3gpNxGA4YeIpphKLT8mW7wrBXJYlOmsXJbKwwaT75Me8MukMuOI9Xp8LsAwa7szVqGBQxlmBVyGe6vk011naWTLWjgmpfRwFvB23qHxPwKZeYiQ1xsjAY6FDIU8gEhRwPw4QB7NNDhgJCjATSEgpnhNrYDSdGApQwLpykaeCt4NNDe72AsEiibHLYWiTe8osnRQBGfaKBoHkQDhh4iWsRQaEUz3eBZK5LFpmIh30nQeAo73HUPCjkagN8HEezK3qxleJChDIuHXIb762RTXWfpZA9OUzSwNnhbfy8xvxKu0QAyLGGPBt4rYSjkkiFHA/ChpD0aeK9kyNEAGsLBmeE2tlKkaMBShoekKRpYGzwa2Oh3MBYJlE0OWw+NN7zDkqOBQ32igcPyIBow9BDRQw2FdlimGzxrRbLYdHjIdxI0nkMc7rpHhBwNwO8jCHZlb9YyPMJQhkeGXIb762RTXWfpZI9KUzTwZvC23igxv6NdowFkeLQ9Gmh0tKGQjwk5GoAPx9ijgUbHhBwNoCEclRluYytNigYsZRhLUzTwZvBooKHfwVgkUDY5bC0Tb3jHJkcDZXyigWPzIBow9BDRMoZCOzbTDZ61IllsOi7kO8lfjcfhrnt8yNEA/D6eYFf2Zi3D4w1lWDbkMtxfJ5vqOksne0KaooE1wdv6gsT8yrlGA8iwnD0aWFDOUMjlQ44G4EN5ezSwoHzI0QAawgmZ4Ta2CqRowFKGJ6YpGlgTPBp4wu9gLBIomxy2Vow3vJOSo4GKPtHASXkQDRh6iGhFQ6GdlOkGz1qRLDZVCvlOgsZzosNd9+SQowH4fTLBruzNWoYnG8qwcshluL9ONtV1lk62SpqigdXB2/pziflVdY0GkGFVezTwXFVDIZ8ScjQAH06xRwPPnRJyNICGUCUz3MZWjRQNWMrw1DRFA6uDRwNL/Q7GIoGyyWFr9XjDOy05GqjuEw2clgfRgKGHiFY3FNppmW7wrBXJYtPpId9J0HhOdbjrnhFyNAC/zyDYlb1Zy/AMQxnWCLkM99fJprrO0smemaZoYFXwtt44Mb+artEAMqxpjwYa1zQU8lkhRwPw4Sx7NND4rJCjATSEMzPDbWy1SNGApQzPTlM0sCp4NHC+38FYJFA2OWytHW94dZKjgdo+0UCdPIgGDD1EtLah0OpkusGzViSLTXVDvpOg8ZztcNc9J+RoAH6fQ7Are7OW4TmGMqwXchnur5NNdZ2lkz03TdHAG8Hb+vDE/Oq7RgPIsL49Ghhe31DI54UcDcCH8+zRwPDzQo4G0BDOzQy3sTUgRQOWMmyYpmjgjeDRwDC/g7FIoGxy2Noo3vDOT44GGvlEA+fnQTRg6CGijQyFdn6mGzxrRbLY1DjkOwkaT0OHu+4FIUcD8PsCgl3Zm7UMLzCUYZOQy3B/nWyq6yyd7IVpigZed4wGmrpGA8iwqUM00NRQyBeFHA3Ah4scooGLQo4G0BAuzAy3sTUjRQOWMrw4TdHA62mIBprHG94lydFAc59o4JI8iAYMPUS0uaHQLiFFAxabWoR8J0HjudjhrntpyNEA/L6UYFf2Zi3DSw1leFnIZbi/TjbVdZZOtmWaooHXgrf1uYn5Xe4aDSDDy+3RwNzLDYXcKuRoAD60skcDc1uFHA2gIbTMDLexXUGKBixl2DpN0cBrwaOBh/0OxiKBsslha5t4w2ubHA208YkG2uZBNGDoIaJtDIXWNtMNnrUiWWxqF/KdBI2ntcNdt33I0QD8bk+wK3uzlmF7Qxl2CLkM99fJprrO0sl2TFM0sDJ4W38wMb9OrtEAMuxkjwYe7GQo5M4hRwPwobM9Gniwc8jRABpCx8xwG1sXUjRgKcOuaYoGVgaPBmb5HYxFAmWTw9Zu8YZ3ZXI00M0nGrgyD6IBQw8R7WYotCsz3eBZK5LFpu4h30nQeLo63HV7hBwNwO8eBLuyN2sZ9jCU4VUhl+H+OtlU11k62Z5pigZeDd7WNyXm18s1GkCGvezRwKZehkLuHXI0AB9626OBTb1DjgbQEHpmhtvY+pCiAUsZ9k1TNPBq8GjgPb+DsUigbHLY2i/e8PonRwP9fKKB/nkQDRh6iGg/Q6H1z3SDZ61IFpsGhHwnQePp63DXHRhyNAC/BxLsyt6sZTjQUIZXh1yG++tkU11n6WQHpSkaWBG8rb+ZmN81rtEAMrzGHg28eY2hkAeHHA3Ah8H2aODNwSFHA2gIgzLDbWxDSNGApQyvTVM0sCJ4NLDG72AsEiibHLZeF2941ydHA9f5RAPX50E0YOghotcZCu36TDd41opksWloyHcSNJ5rHe66N4QcDcDvGwh2ZW/WMrzBUIbDQi7D/XWyqa6zdLLD0xQNvBK8rR+emN8I12gAGY6wRwOHjzAU8o0hRwPw4UZ7NHD4jSFHA2gIwzPDbWwjSdGApQxvSlM08ErwaOAwv4OxSKBsctg6Kt7wbk6OBkb5RAM350E0YOghoqMMhXZzphs8a0Wy2DQ65DsJGs9NDnfdW0KOBuD3LQS7sjdrGd5iKMMxIZfh/jrZVNdZOtlb0xQNvBy8rS9JzG+sazSADMfao4ElYw2FfFvI0QB8uM0eDSy5LeRoAA3h1sxwG9s4UjRgKcPb0xQNvBw8GljsdzAWCZRNDlvviDe88cnRwB0+0cD4PIgGDD1E9A5DoY3PdINnrUgWmyaEfCdB47nd4a47MeRoAH5PJNiVvVnLcKKhDO8MuQz318mmus7SyU5KUzTwUvC2fktifne5RgPI8C57NHDLXYZCnhxyNAAfJtujgVsmhxwNoCFMygy3sd1NigYsZTglTdHAS8GjgdF+B2ORQNnksPWeeMObmhwN3OMTDUzNg2jA0ENE7zEU2tRMN3jWimSx6d6Q7yRoPFMc7rrTQo4G4Pc0gl3Zm7UMpxnK8L6Qy3B/nWyq6yyd7P1pigaWB2/rDRPzm+4aDSDD6fZooOF0QyHPCDkagA8z7NFAwxkhRwNoCPdnhtvYZpKiAUsZPpCmaGB58Giggd/BWCRQNjlsnRVveA8mRwOzfKKBB/MgGjD0ENFZhkJ7MNMNnrUiWWyaHfKdBI3nAYe77kMhRwPw+yGCXdmbtQwfMpThnJDLcH+dbKrrLJ3sw2mKBl4M3tYnJOY31zUaQIZz7dHAhLmGQn4k5GgAPjxijwYmPBJyNICG8HBmuI3tUVI0YCnDx9IUDbwYPBoY73cwFgmUTQ5b58Ub3uPJ0cA8n2jg8TyIBgw9RHSeodAez3SDZ61IFpvmh3wnQeN5zOGu+0TI0QD8foJgV/ZmLcMnDGW4IOQy3F8nm+o6Syf7ZJqigReCt/W+ifktdI0GkOFCezTQd6GhkJ8KORqAD0/Zo4G+T4UcDaAhPJkZbmN7mhQNWMrwmTRFAy8Ejwb6+B2MRQJlk8PWRfGGtzg5GljkEw0szoNowNBDRBcZCm1xphs8a0Wy2LQk5DsJGs8zDnfdZ0OOBuD3swS7sjdrGT5rKMOlIZfh/jrZVNdZOtnn0hQNPB+8rT+fmN8y12gAGS6zRwPPLzMU8vMhRwPw4Xl7NPD88yFHA2gIz2WG29heIEUDljJ8MU3RwPPBo4FlfgdjkUDZ5LB1ebzhvZQcDSz3iQZeyoNowNBDRJcbCu2lTDd41opksenlkO8kaDwvOtx1Xwk5GoDfrxDsyt6sZfiKoQxXhFyG++tkU11n6WRfTVM0sCx4W48l5rfSNRpAhivt0UBspaGQXws5GoAPr9mjgdhrIUcDaAivZobb2F4nRQOWMnwjTdHAsuDRQGm/g7FIoGxy2Loq3vBWJ0cDq3yigdV5EA0YeojoKkOhrc50g2etSBab1oR8J0HjecPhrvtmyNEA/H6TYFf2Zi3DNw1luDbkMtxfJ5vqOksn+1aaooHngrf1won5rXONBpDhOns0UHidoZDfDjkagA9v26OBwm+HHA2gIbyVGW5jW0+KBixl+E6aooHngkcDB/odjEUCZZPD1g3xhvducjSwwScaeDcPogFDDxHdYCi0dzPd4FkrksWmjSHfSdB43nG4674XcjQAv98j2JW9WcvwPUMZbgq5DPfXyaa6ztLJvp+maGBp8LbeOzG/D1yjAWT4gT0a6P2BoZA/DDkagA8f2qOB3h+GHA2gIbyfGW5j20yKBixl+FGaooGlwaOBXn4HY5FA2eSwdUu84X2cHA1s8YkGPs6DaMDQQ0S3GArt40w3eNaKZLFpa8h3EjSejxzuup+EHA3A708IdmVv1jL8xFCGn4ZchvvrZFNdZ+lkP0tTNPBs8LZePDG/ba7RADLcZo8Gim8zFPLnIUcD8OFzezRQ/POQowE0hM8yw21sX5CiAUsZfpmmaODZ4NHAQX4HY5FA2eSw9at4w/s6ORr4yica+DoPogFDDxH9ylBoX2e6wbNWJItN20O+k6DxfOlw1/0m5GgAfn9DsCt7s5bhN4Yy/DbkMtxfJ5vqOksn+12aooElwTu0HPntcI0GkOGOTPt1O0O+w8OunZn7DsQiwTdrI0KF/S4z3EbxPemubSmXH3LZUIP4/INDGeZlg1rs2KB+dG1QyPBHhwb1U8gNCnb9lEcNKtXpKPifMt0qTCxYHnlaSRblD25jYn67XCsJMtzl0OPsMrTYn0OuUPDhZ4dC/jnkZzBUop8dwoPvDbx+CTkcBNtfHBtr9matW78Y/P815BBvf3fkVNdZ7si7Qy5DMNrtcCOwlIOLXb2wTmV+e7v6zcjLWv9gkyGPaG+sVZl/34FYsOuKJ/6jYIprk28uN/9XNJF08uj/jDxynnzLf0cpOU4ekyKiSTz51lTRT8LJY4NHStG7DDfMxmXc+q8D4vvYf561z4HbUtv/z8njAviaffLtQbjET74jEMO/Tx4fjPdfJ08IWDY4eWLQcvROvjNwmUcjkwxlfoFjmSe/GkuVz++G/sJQD6MW+/MyEDX4kyO/P1wDUWT4h8NNak/INynYtSeXAZC1cx9k6NyvMXTugw2d+xBD536toXO/ztC5jzI09ItJnfv1hs59qKFzv8HQuQ8zdO7DDZ37CEPnfqOhcx9p6NxvMpR5c1Ln/qehczfUw6jF/rzs3P907Nz3unbuyHCvQ+ceKRBu5w67kEfEdp1vXqns25OLvLK3/CmuTa4cDxluJHMMN5KHDY30kjLh+Jps1FzDDesRww3rUYOvLcLzNYdRjxluQvMMN6HHDb5eGqqv+4yab7jZPWG42S0w+HpZ2L7GjXrScFNdaLipPmXwtaWjr1nxfSzY6dGnLa+6CwT/u4b+Jmpor1FDfY8a6kvUwjsvgwAD0xz55SuQiwxxsfW6jJCDANiVQb4xTzbcmO823JinGBrVFaQb8z2GG/NUw435XoOvrUk35mmGG/N9hhvz/QZf24Tq6z6jphtuzDMMN+aZBl/bhu1r3KgHDDfmWYYb84MGX9uRbsyzDTblN9yYDf1N1NBeo4b6HjXUl6iFd17emPM73pgzXW/MyDDT4cZcIOQbM+wqQHo6z3DMCwWP10l+Y4gPSvG30hEUpDqZcbNOdTLjJprqZMbNLdXJjJtOqpNnBz83x2at+4w3ValOZrxBSnUy481OqpMZb1xSncx4E5Lq5KcNdT+xbmQViB/InnuR5XNHt96gChqigtzkU+g/8rl7RI8JV/Z7Y9xZsdsOee/6PQ1yk88B/5FP8rW5yefA/8incr4Nx7716V1HDK57WKUndv92e27yKfwf+bR/bdq2lzrVad53xtheGfmeWJqbfIr8Rz6v3lT7qRot2s15qsOD544Z9MuG3ORT9D/ymXDS9pazJn08tPzOdcfddFOhw3KTT7H/yKdt5iP1Z6488dSdN1a5osOPu47KTT4H/Uc+yyfUWHXTq8Mf2lr3kPcLZHYYlJt8iv9HPrtGl9x4wBk/vXTSA8/1P7PvD51yk8/B/5HP97tuObvLr7G37pnQevzom5esRz90pJcKx/8ffQkS2jraIdoI6i/qFsodZQJe8OXgAv/++8bBkPmyDA8KJQz9XL64X8lbLGLbktmnOt1io2seJQ154CEkryYyBvFt79/bLr//i/33pf/cJxNtLRWvY4ck3zhxoE7SX7BOWiyRuvKNj1e+aClDRT3EEZS1oZdyvPFbRyyXMPh+qOG1T7oa6aGERnqYsZEi5UUjLelYJ/73VLbv1/89lf2/9VR2ePLN5fAC/67wheL7WMRuTKpO8z8abbIZf9kW9O8e8b+P43+fHNlXtmAyPOn/rWVr+Q5ymKG8LGV75P++r/x9cmRf2R4ZL9u8vKEe4XhDjaTIJ/mNSWJDPyq5QzrKp0OyDlU9wtDJHGWoiEcXsDmZ7dPRPg3R6tORBjstPh1jeAWV6NMxeeBTaUPDDmu+SOJmtT9msD+sIdEoC0ytSHxDEQt+afK5+daWaHt1gQfbdKpUrkj97w87eNLI2q+Mu7F2uZMMf/evP5w9pzF7TmAs4LX5E/5G6XhfECuw74aW3fkZ/ma0jHf+sV46rsDffz9bKsjPbuvfDXhujg76+Lj9ZZNfK1kf68sYGvrx+z+3ddK50bLGR7q8+upf9j9s/GXtPRumjH6r29gJ8zf3vmHOg4n5neD61R8Z4uIUs2P/lfkJhpZfzlBIrj6UK5Dyncq/fChnLOSgrSbZx1jGjcccXLfOr2sHzO7X9oY5s8sZ7jiJraZ8vJArJIcM5eO3osRjFRxuT/9laKqCK29oXRUMAAAe/uaL7H+L7ed4cr6J/2etZOUdx+OcmFxYJ+ZBfFfeEN+daCjEigUCw8zhU8U8iIUqGOy0+HSSY3x3UsIDRnLLt75VRUM63mAzzi9bIHe3j1RbYoOqFO9ZTk6urJV8epaTEwrbCuL4eFedfX4qENlduzUuKGvIo5Kh5zrZeMv4v9BzVXLsuSonV4bKedBzVTL0XJUNhVjFseeqkgc918kGOy0+VXXsuaom9Fz7q4Bh3v5yk49rZT0lubKe4lNZLeO9I0lO52XFPsXwd6sZzk30v5pPxbb6b7klWxqBxf9TjRUi2/9T/+P2nXi+hUcvw0eHxEZXPX57Pa1A0knW21ovw8vo6obb2mlpetw9zfFx93TXx11keLrD4+7phsfdM0J+3IUPZzg87p6RpsfdMxwfd2vEC/nM5K69hk9QemYePO5aCq6GoXWdKfi4W8PxPlwzubBq5kHQWMNwb61pKMSzHIPGs/IgaDzTYKfFp1qOQWOtPHzcRUOqbrAZ559WIHe3j1RbYoM6O96z1E6urGf79Cy1c/G4Wz3eVWefnwpEdtdujQtOM+RxtqHnqi34uHu2Y89VJ7ky1MmDnutsQ89Vx1CIdR17rrp50HPVNthp8ekcx57rnBAedy23v9zk41pZ6yVX1np58Lhbw7EX+Q87/zE26N891/Fx99w8eNy13JItjcDif33Hx936ITzu9nZ83D0vfnttUCDpJOttrbfhcfc8w22tQZoedxs4Pu42dH3cRYYNHR53GxoedxuF/LgLHxo5PO42StPjbiPHx93z44XcOLlrP98nKG2cB4+7loI739C6Ggs+7p7veB++ILmwLsiDoPF8w731AkMhNnEMGpvkQdDY2GCnxacLHYPGC/PwcRcN6TyDzTi/QYHc3T5SbYkNqmm8Z7koubI29elZLsrF4+558a46+/xUILK7dmtc0MCQR1NDz3WR4ONuU8eeq1lyZWiWBz1XU0PP1cxQiBc79lwX50HPdZHBTotPzR17ruYhPO5abn+5yce1sl6SXFkvyYPH3fMde5H/sPMfY4P+3RaOj7st8uBx13JLtjQCi/+XOj7uXppw58Lg78IJ58Xi+4JnDyn+XvVCgyrsLHB11T9KvbFnyMP3freqxvja3S87qVOf81slnnvEsLa/zRtWtXXZuYf9WPi1jdVqr3702o2vFyv50YjnVpTffWebxHODbNnnZp7/cI8Bq2499eK2Vzz/7mc1Zx5++83F2tW46IQ7+m2pP2HZZ/kSz43dt/aFk36/bPfP+fucu/GIV3/7tf8l81fWuT7/9o5HdBz9xvITEs+12HDUuT/Mjl0/4qVbR5aZPaL1lwuqHnT80m9LHHb40vd3PTDv4QYNE8/NeOS70z4/58SjoxM6nfjq5VO/2j77sZMOffj12CNnzR87ZsWvDyeea7Gh0q9L6mwbU/TCEtd83HzAb59PPfrqpt2rfz5n+DNdJw2s+sOaNYnnnrzmlnWXd3uu+eJRE04ucsjNHS557JlHXlr/a9tyb9yw48nl40cmnptqy15zAfXk+HifkT2wrnp8n/3l4bz4Pvu1RSwSaMswnGv5u9HLPDtaeunyAn+37cKRfTevHCc6/N2A5/pusVycFosE2aL/+BRNuKaVZ/cVXmrtpTZeauuldl5q76UOXuropU5e6uylLl7q6qVuXrrSS9291MNLV3mpp5d6eam3l/p4qa+X+nmpv5cGeGmgl6720iAvXeOlwV4aknwDgjEFk45d4XOstc+xNj7H2voca+dzrL3PsQ4+xzr6HOvkc6yzz7EuPse6+hzr5nPsSp9j3X2O9fA5dpXPsZ4+x3r5HOvtc6yPz7G+Psf6+Rzr73NsgM+xgT7HrvY5Nsjn2DU+xwb7HBtS4N+LdpeJ72ORQFuORp/qptwq4LlY4PuKwOdGoq2DnuvZ2ybYuRPx+NQ20Lk//fWo1S7IuR///VjWPsC558Qf4TqkPvcffZGOKc/t88+jYadU5y7e9xjZOcW5gxMeObv897kNEh9Pu/7nuV/keJTt9l/nnpLzsffK/zi3XNIjcnfDY3yP/Z57WXJdj161v3OH/6tdRHvu59zh/25D0V7+5z7t096ivX3PPdevbUb7+J3b1LcdR/v6nLvIv81H+/373PL76R+i/f917vT99SXRAcnnVtlvvxMdmHTux/vvo6JX5zy333/0Z9FBOc5t8l99X/SaxHM7/Wc/GR2ccG7l/+5To0MMQVdefnIaErwvX5eY37UFcpEhLrYst4nMrw0OKHqd4Wbm6sN1Bf59XSofrjMWcl6pdRkq11t+B2ORQNnksPX6eAUZmhwZXx8Hl3hsqE8EY33pa6jJ0esNFWSoEZ61cFAprjdWJth1fZp6jMHBOd+XmN8Nrj0GMrzB3mPcd4OhxxgWco8BH4bZe4z7hqWpxxgcPN9pfgdjkUDZ5LB1eLyCjEjuMYb79Bgj8qDHMNTk6HBDBRnhCM+6ArXFphsNjeGfHwZbrotXcOsnQcuteqShMfj5kOp0MBrp0BOPTFNPfE3w+rswMb+bXHtiZHiTvSdeeJOh8o0KuSeGD6PsPfHCUbmsfEEa0MiQG9DNRh+yN2vHZCnD0Ya6kZd3uGuC5/uk38FYJFA2OWy9Jd7wxiTf4W7xucONyYM7nKGHiN5iKLQxjvCsFcli0625vMOlugaNZ7TD3WFsyHct+D2WYFf2Zi3DsYYyvC3kMtxfJxukcw567jhjh5ZX0cCg4G39jsT8bneNBpDh7fZo4I7bDYDuCDkagA932KOBO+4IORpAQxhXINzGNt7Y2LI3q02WMpyQpmhgUPB8b/c7GIsEyiaHrRPjDe/O5Ghgok80cGceRAOGHiI60VBodzrCs1Yki02TQr6ToPFMcLjr3hVyNAC/7yLYlb1Zy/AuQxlODrkM99fJprrO0snenaZ3A1cHb+uxxPymuEYDyHCKPRqITTEU8j0hRwPw4R57NBC7J+RoAA3h7gLhNrappGjAUob3pikauDp4vqX9DsYigbLJYeu0eMO7LzkamOYTDdyXB9GAoYeITjMU2n2O8KwVyWLT/SHfSdB47nW4604PORqA39MJdmVv1jKcbijDGSGX4f462VTXWTrZmWmKBgYGb+tvJeb3gGs0gAwfsEcDbz1gKORZIUcD8GGWPRp4a1bI0QAawswC4Ta2B0nRgKUMZ6cpGhgYPN+1fgdjkUDZ5LD1oXjDm5McDTzkEw3MyYNowNBDRB8yFNocR3jWimSx6eGQ7yRoPLMd7rpzQ44G4Pdcgl3Zm7UM5xrK8JGQy3B/nWyq6yyd7KNpigYGBG/rHRLze8w1GkCGj9mjgQ6PGQp5XsjRAHyYZ48GOswLORpAQ3i0QLiN7XFSNGApw/lpigYGBM+3vd/BWCRQNjlsfSLe8BYkRwNP+EQDC/IgGjD0ENEnDIW2wBGetSJZbHoy5DsJGs98h7vuwpCjAfi9kGBX9mYtw4WGMnwq5DLcXyeb6jpLJ/t0mqKB/sHb+nuJ+T3jGg0gw2fs0cB7zxgKeVHI0QB8WGSPBt5bFHI0gIbwdIFwG9tiUjRgKcMlaYoG+gfPd6PfwVgkUDY5bH023vCWJkcDz/pEA0vzIBow9BDRZw2FttQRnrUiWWx6LuQ7CRrPEoe77rKQowH4vYxgV/ZmLcNlhjJ8PuQy3F8nm+o6Syf7QpqigX7B23qjxPxedI0GkOGL9mig0YuGQl4ecjQAH5bbo4FGy0OOBtAQXigQbmN7iRQNWMrw5TRFA/2C59vQ72AsEiibHLa+Em94K5KjgVd8ooEVeRANGHqI6CuGQlvhCM9akSw2vRrynQSN52WHu+7KkKMB+L2SYFf2Zi3DlYYyfC3kMtxfJ5vqOksn+3qaooG+wdv6gsT83nCNBpDhG/ZoYMEbhkJeFXI0AB9W2aOBBatCjgbQEF4vEG5jW02KBixluCZN0UDf4Pk+4XcwFgmUTQ5b34w3vLXJ0cCbPtHA2jyIBgw9RPRNQ6GtdYRnrUgWm94K+U6CxrPG4a67LuRoAH6vI9iVvVnLcJ2hDN8OuQz318mmus7Sya5PUzTQJ3hbfy4xv3dcowFk+I49GnjuHUMhbwg5GoAPG+zRwHMbQo4G0BDWFwi3sb1LigYsZbgxTdFAn+D5LvU7GIsEyiaHre/FG96m5GjgPZ9oYFMeRAOGHiL6nqHQNjnCs1Yki03vh3wnQePZ6HDX/SDkaAB+f0CwK3uzluEHhjL8MOQy3F8nm+o6Sye7OU3RQO/gbb1xYn4fuUYDyPAjezTQ+CNDIW8JORqAD1vs0UDjLSFHA2gImwuE29g+JkUDljLcmqZooHfwfM/3OxiLBMomh62fxBvep8nRwCc+0cCneRANGHqI6CeGQvvUEZ61Ills+izkOwkaz1aHu+62kKMB+L2NYFf2Zi3DbYYy/DzkMtxfJ5vqOksn+0WaooFewdv68MT8vnSNBpDhl/ZoYPiXhkL+KuRoAD58ZY8Ghn8VcjSAhvBFgXAb29ekaMBShtvTFA30Cp7vML+DsUigbHLY+k284X2bHA184xMNfJsH0YChh4h+Yyi0bx3hWSuSxabvQr6ToPFsd7jr7gg5GoDfOwh2ZW/WMtxhKMOdIZfh/jrZVNdZOtnv0xQN9HSMBn5wjQaQ4Q8O0cAPhkL+MeRoAD786BAN/BhyNICG8H2BcBvbT6RowFKGu9IUDfRMQzTwc7zh/ZIcDfzsEw38kgfRgKGHiP5sKLRfSNGAxaZfQ76ToPHscrjr7g45GoDfuwl2ZW/WMtxtKMPfQi7D/XWyqa6zdLK/pykauCp4W5+bmN8frtEAMvzDHg3M/cNQyHtCjgbgwx57NDB3T8jRABrC7wXCbWx/kqIBSxnuTVM0cFXwfB/2OxiLBMomp61Z8aNZkZx3fvxHcjSAk3IbDRh6iChsCHLuzrhtAW3IAc9akSw25cuyVW5rhUHj2etw180Ibtc+4yLB7YLfGVnh25W9Wcsww1CG+UMuw/11sqmus3SymQaueRkN9Aje1h9MzK9AVi4yxMXGaODBAoZCzjJUHlcfsoyNBz5k5bJRB2kImVnhNraCxsaWvVltspRhIYNNeRkN9AgeDczyOxiLBMomh60HxBvegcnRwAE+0cCBeRANGHqI6AGGQjswyw2etSJZbCoc8p0EjaeQw123SMjRAPwuQrAre7OWYRFDGRYNuQz318mmus7SyRZLUzTQPXhb35SY30Gu0QAyPMgeDWw6yFDIxUOOBuBDcXs0sKl4yNEAGkKxrHAb28GkaMBShiXSFA10Dx4NvOd3MBYJlE0OW0vGG16p5GigpE80UCoPogFDDxEtaSi0Ullu8KwVyWLTISHfSdB4SjjcdQ8NORqA34cS7MrerGV4qKEMDwu5DPfXyaa6ztLJHp6maODK4G39zcT8jnCNBpDhEfZo4M0jDIV8ZMjRAHw40h4NvHlkyNEAGsLhWeE2tqNI0YClDI9OUzRwZfBoYI3fwVgkUDY5bD0m3vBKJ0cDx/hEA6XzIBow9BDRYwyFVjrLDZ61IllsioV8J0HjOdrhrlsm5GgAfpch2JW9WcuwjKEMjw25DPfXyaa6ztLJHpemaKBb8LZ+eGJ+x7tGA8jweHs0cPjxhkIuG3I0AB/K2qOBw8uGHA2gIRyXFW5jO4EUDVjKsFyaooFuwaOBw/wOxiKBsslha/l4w6uQHA2U94kGKuRBNGDoIaLlDYVWIcsNnrUiWWw6MeQ7CRpPOYe7bsWQowH4XZFgV/ZmLcOKhjI8KeQy3F8nm+o6SydbKU3RQNfgbX1JYn4nu0YDyPBkezSw5GRDIVcOORqAD5Xt0cCSyiFHA2gIlbLCbWxVSNGApQyrpika6Bo8GljsdzAWCZRNDltPiTe8asnRwCk+0UC1PIgGDD1E9BRDoVXLcoNnrUgWm04N+U6CxlPV4a5bPeRoAH5XJ9iVvVnLsLqhDE8LuQz318mmus7SyZ6epmigS/C2fktifme4RgPI8Ax7NHDLGYZCrhFyNAAfatijgVtqhBwNoCGcnhVuYzuTFA1YyrBmmqKBLsGjgdF+B2ORQNnksPWseMOrlRwNnOUTDdTKg2jA0ENEzzIUWq0sN3jWimSx6eyQ7yRoPDUd7rq1Q44G4Hdtgl3Zm7UMaxvKsE7IZbi/TjbVdZZOtm6aooHOwdt6w8T8znGNBpDhOfZooOE5hkKuF3I0AB/q2aOBhvVCjgbQEOpmhdvYziVFA5YyrJ+maKBz8Giggd/BWCRQNjlsPS/e8BokRwPn+UQDDfIgGjD0ENHzDIXWIMsNnrUiWWxqGPKdBI2nvsNdt1HI0QD8bkSwK3uzlmEjQxmeH3IZ7q+TTXWdpZNtnKZooFPwtj4hMb8LXKMBZHiBPRqYcIGhkJuEHA3Ahyb2aGBCk5CjATSExlnhNrYLSdGApQybpika6BQ8GhjvdzAWCZRNDlsvije8ZsnRwEU+0UCzPIgGDD1E9CJDoTXLcoNnrUgWmy4O+U6CxtPU4a7bPORoAH43J9iVvVnLsLmhDC8JuQz318mmus7SybZIUzTQMXhb75uY36Wu0QAyvNQeDfS91FDIl4UcDcCHy+zRQN/LQo4G0BBaZIXb2FqSogFLGV6epmigY/BooI/fwVgkUDY5bG0Vb3hXJEcDrXyigSvyIBow9BDRVoZCuyLLDZ61Illsah3ynQSN53KHu26bkKMB+N2GYFf2Zi3DNoYybBtyGe6vk011naWTbZemaKBD8Lb+fGJ+7V2jAWTY3h4NPN/eUMgdQo4G4EMHezTwfIeQowE0hHZZ4Ta2jqRowFKGndIUDXQIHg0s8zsYiwTKJoetneMNr0tyNNDZJxrokgfRgKGHiHY2FFqXLDd41opksalryHcSNJ5ODnfdbiFHA/C7G8Gu7M1aht0MZXhlyGW4v0421XWWTrZ7mqKB9sHbeiwxvx6u0QAy7GGPBmI9DIV8VcjRAHy4yh4NxK4KORpAQ+ieFW5j60mKBixl2CtN0UD74NFAab+DsUigbHLY2jve8PokRwO9faKBPnkQDRh6iGhvQ6H1yXKDZ61IFpv6hnwnQePp5XDX7RdyNAC/+xHsyt6sZdjPUIb9Qy7D/XWyqa6zdLID0hQNtAve1gsn5jfQNRpAhgPt0UDhgYZCvjrkaAA+XG2PBgpfHXI0gIYwICvcxjaIFA1YyvCaNEUD7YJHAwf6HYxFAmWTw9bB8YY3JDkaGOwTDQzJg2jA0ENEBxsKbUiWGzxrRbLYdG3IdxI0nmsc7rrXhRwNwO/rCHZlb9YyvM5QhteHXIb762RTXWfpZIemKRpoG7yt907M7wbXaAAZ3mCPBnrfYCjkYSFHA/BhmD0a6D0s5GgADWFoVriNbTgpGrCU4Yg0RQNtg0cDvfwOxiKBsslh643xhjcyORq40ScaGJkH0YChh4jeaCi0kVlu8KwVyWLTTSHfSdB4RjjcdUeFHA3A71EEu7I3axmOMpThzSGX4f462VTXWTrZ0WmKBtoEb+vFE/O7xTUaQIa32KOB4rcYCnlMyNEAfBhjjwaKjwk5GkBDGJ0VbmO7lRQNWMpwbJqigTbBo4GD/A7GIoGyyWHrbfGGNy45GrjNJxoYlwfRgKGHiN5mKLRxWW7wrBXJYtPtId9J0HjGOtx17wg5GoDfdxDsyt6sZXiHoQzHh1yG++tkU11n6WQnpCkaaG1YZDcxv4mu0QAynJhlv+7OkO/wsOvOrH0HYpHgm7URocJOyAq3UUwi3bUt5XJXLhtqEJ/vcijDvGxQVzg2qMmuDQoZTnZoUHeH3KBg19151KBSnY6CvzvLrcLEguWRp5WklWF128T8prhWEmQ4xaHHmWJosfeEXKHgwz0OhXxPyM9gqET3OIQHkwy8poYcDoLtVMfGmr1Z69ZUg//3hhzi7e+OnOo6yx15WshlCEbTHG4ElnLA30ZHWCfBxiHxJdoHx/fXxPeD4vur4/uB8f2A+L5/fN8vvu8b3/eJ73vH973i+57x/VXxfY/4vnt8f2V83y2+7xrfd4nvO8f3neL7jvF9h/i+fXzfLr5vG9+3ie9bx/dXxPet4vt38/+93xDfvxPfr4/v347v18X3b8X3a+P7N+P7NfH96vh+VXz/Rnz/enz/Wny/Mr5/Nb5fEd+/Et+/HN+/FN8vj+9fjO9fiO+fj++XxffPxfdL4/tn4/sl8f3i+H6Rt7/Pqzv3e2m6l2Z4aaaXHvDSLC896KXZXnrIS3O89LCX5nrpES896qXHvDTPS497ab6XnvDSAi896aWFXnrKS0976RkvLfLSYi8t8dKzXlrqpeeykipyfB+LBNqixxkitcTN2s9Nzh/cpvtIj9d3G2y6n2TTFINN00k23WOwaQbJpqkGm2aSbLrXYNMDJJumGWyaRbLpPoNND5Jsut9g02ySTdMNNj1EsmmGwaY5JJtmGmx6mGTTAwab5pJsmmWw6RGSTQ8abHqUZNNsg02PkWx6yGDTPJJNcww2PU6y6WGDTfNJNs012PQEyaZHDDYtINn0qMGmJ0k2PWawaSHJpnkGm54i2fS4waanSTbNN9j0DMmmJww2LSLZtMBg02KSTU8abFpCsmmhwaZnSTY9ZbBpKcmmpw02PedoU9Ro07Lg+Zyam3yeT51PkcS/XTjy97vk7H8vi7+77hF/v3hV9vvJrH3nveD9/qKXlnvppaT3f9ZhTj0NZfWC4R35y47larW/l8H+Fw32v0Kyv7fB/uUG+1cY7Perhy/H6+Er8f2K+P6lhHr4qvf7Si+95qXXc1kP+xg4vGrg8AapHPsa7F9psH8Vyf5+BvtfM9i/Opf18I14vVsV36+O719PqIdrvN/f9NJaL72Vy3rY38BhjYHDOlI5DjDY/6bB/rdJ9g802L/WYP/6XNbDdfF693Z8vz6+fyuhHr7j/b7BS+96aWMu6+HVBg7vGDi8l0sO78X93hDfvxvfb0zgsMn7/X0vfeClD1N8n0xl7+bg9hbLTT4fpc4nI/FvJ3PZHOewKb5/Jh63fZTAZYv3+8de2uqlT+LHMyP7bP0v+1Ns0S2Gck0cV/9pvHw+y4pnmj2GHv8xPOnYZ/FjiZu1Ym8xVNZP939u66Rzo58ZAAC89907ku8/zont53hyvon/Zy20T42NMXvbllxY27L+XYuSC8YC+z/y/seAoH/386zAMHP49HmAypYq788Mdlp8+uI/fEq+NtGnLxIaVcEEfxJ9SrFFfc7Nt7ZE26sLPNimU6VyRep/f9jBk0bWfmXcjbXLnWT4u/80huzGn93gLbZ96Z3/lZe+TnH3S8XX8lT3paHcths7ibwa6rrdsaF/k5WLDL/Jsl/3rQGmq13fJlSOWMS+WSuT5RH7K4P/36WpMn3nWJl2uFYmZLjDoTLtDLkywa6djpXJpWHszLLHld8bC6tQfP9lPK+v4vuvs/77OPL5wUs/eumnFL1vKjO+zLJxyT43FYtdWbYyyt6s75+/N9j0s8HXxPLZlVAOibal/CORv+9u2PfOb78W9v7ipV+9tDupnK2cvjZw+s3Ayc+WVNdk19+g52dzsLbH30l1MPF9Zqpz/wiZLerb14Y8UNa/O7DdY2Rr9QNMLX0TuO5x8CMaSc+N/Vyjjdnbn6439nPjF1sr95+GQtgbchAAH/Y6FPJeY/QGxhn/cU4sEmgrADsPy93faO54XRfH6waSr+vueF1vx+u6OV4Xc7zuOsfrqjheN9TxupjjdR0crxvgeF3M8bqujte5tiPX62KO1/V1vM61/IY4XufKpT/60mjSQev9w3KzT87DnNleY4Rk/fvH5P/7xmaNrEw36YK2J5bsd5+J17lww/Vh+hV19MvvOmtAZbEzX3A7oy62ZNehWMA8XMvmGMMTUoahbP7640m2BOHv0G7yWcotfy59SHX6X0FwQbvvt5QJ1y7U14yC9nqYaajnDB/yh9z/FDDUDzyQ4PtR1C9To40RY738+yLHzKxPXexH6x179+5NzC+rYC4yzDLWemSeZaj1BQsa7tqOPhQ09ijwoaCxJv/v0Zp23f8erf23/z1a+28xx+v+92jtv/3v0TrVRa6ZFQw5vEYImOkQxhb6PxTGZj+qWR8RDnAIEbFZWVkCmgONj8Eu5V0g5JC/sDFQyqtouFzwc3PkV8Q1Gi4Xv9h6XdGQI1zYVTRBKToWsW/WClLI4FOxXFbyVH+/fORv/60+lDfkcVDIHTMYHeTQqRV3fN9XPBfvMdFpFXbgbekYDzZ2KoUi+0ao58jUaKOlU8lNPmUjnHwK5bLepiqnEyN/1ylrXcgwnHtixM7KOQI7KGRgFSJ/N3QrsIMMjaeE0QerLdGkPIL6bGVVMuSyQCXMrsCJ16XKxrXyprKnVMg3mewbpXXsseVGaQl2Dgk5+q0QzyNiu+6vG8kBkb+nNfkaYrCBdUM5IcLJx3rjsj49oZ+wPG3i/OIFw78x/nOhMR9Lm06cyXVovN4eVjAXN7NDHKPDQ3MRHSLPQx1ucIcYOo7DHf06PA++clvsPCLkr9yFCpqeTP5pLGE+7R0Z8k0MPpR0CCaOCtkudPQuQc7RBF6lHOw6JmS7cCNx4VU6ZLsKOT6Jx9L0GqxS8HNz5FfG9TVYpfjF1uuODfk1GOw61iHac8kLN4HDHSrJHWXCtQs3nCMd7BpvtCt7sz5JHGe4WRlYRQ32+z5JpLL75Mjfdct64zzZkMfxIXdsYH+8Q90o6xhslc2DYOt4Q59xgjHYyt6sdbhc+uvwX5u1LuL7l+WJG+cf4VBfyof89ulgox8HO/pRIeT2eEjcrjAflE4kBJcubCum6fW+JVjKTT4VI5x8yuWyfFOVU5VI+K/3q0TsrKLJv8QCXRaJHh8ysMqRv29aVmCWG91JxsaTVysmB220e/fu/djveCySOg/8SLS1UjygP7lgJGd0USne6yQeO9nHQOu7/YrBCmIiVJMqGQrtZCM8a8VDBapEevpBj3+UQ69fuWD4dh3tYFcVgl3HONhVlWBXaQe7TiHYFXOwq5rBLvQL+D40I/5v1E3UAzCHf/hbBQv8L/0vcZJjW8lEv1/Roa2cavwuVcHneCxi26z9wKkFw8+jOmGsxEmGOCE7gLSW52nGvg/jEmbE//2/vu9/KZ1pf20rSMxraL9/PWSd5vBwVt3Qfk839qsn+hyPRYLZlfxLLNBlnH719HBjxH/ue2E+aJ/BK8t9Btqui55BKMsaAhzQjwQ81zmPMx1Y++WTqt7VNPRp6eJdk1DvziLxrhU8n3zp4l2LwPtsEu/awfPJSBfv2gTedUi86wbPJ3+6eNcl8D6HxLte8Hwy08W7HoH3uSTe9YPnUyBdvOsTeJ9H4t0geD5Z6eLdgMC7IYl3o+D5FEwX70YE3ueTeDcOnk+hdPFuTOB9AYl3k+D5HJAu3k0IvC8k8W4aPJ8D08W7KYH3RSTezYLnUzhdvJsReF9M4t08eD5F0sW7OYH3JSTeLYLnUzRdvFsQeF8q8J7UsBShcx6Xkepdy+D5HJQu3i0J9e5yEu9WwfMpni7erQi8ryDxbh08n4PTxbs1gXcbEu+2wfMpkS7ebQm825F4tw+eT8l08W5P4N2BxLtj8HxKpYt3RwLvTiTenYPnc0i6eHcm8O5C4t01eD6Hpot3VwLvbiTeVwbP57B08b6SwLs7iXeP4Pkcni7ePQi8ryLx7hk8nyPSxbsngXcvEu/ewfM5Ml28exN49yHx7hs8n6PSxbsvgXc/Eu/+wfM5Ol28+xN4DyDxHhg8n2PSxXsggffVJN6DgudTOl28BxF4X0PiPTh4PrF08R5M4D2ExPva4PmUSRfvawm8rxP4zlU6f/h5XE+qd0OD53NcungPJdS7G0i8hwXP5/h08R5G4D2cxHtE8HzKpov3CALvG0m8RwbP54R08R5J4H0Tifeo4PmUSxfvUQTeN5N4jw6eT/l08R5N4H0LifeY4PlUSBfvMQTet5J4jw2ez4np4j2WwPs2Eu9xwfOpmC7e4wi8bxd47ludEX4ed5Dq3fjg+VRKF+/xhHo3gcR7YvB8Tk4X74kE3neSeE8Knk/ldPGeROB9F4n35OD5VEkX78kE3neTeE8Jnk/VdPGeQuB9D4n31OD5nJIu3lMJvO8l8Z4WPJ9q6eI9jcD7PoG4eBlh3s/9pHo3PXg+1dPFezqh3s0g8Z4ZPJ/T0sV7JoH3AyTes4Lnc3q6eM8i8H6QxHt28HzOSBfv2QTeD5F4zwmeT4108Z5D4P0wiffc4PmcmS7ecwm8HyHxfjR4PjXTxftRAu/HSLznBc/nrHTxnkfg/TiJ9/zg+dRKF+/5BN5PkHgvCJ7P2enivYDA+0kS74XB86mdLt4LCbyfIvF+Ong+ddLF+2kC72dIvBcFz6duungvIvBeTOK9JHg+56SL9xIC72dJvJcGz6deungvJfB+jsR7WfB8zk3b+28C7+dJvF8Ink/9dPF+gcD7RRLv5cHzOS9dvJcTeL9E4v1y8HwapIv3ywTer5B4rwieT8N08V5B4P0qiffK4Pk0ShfvlQTer5F4vx48n/PTxft1Au83SLxXBc+ncbp4ryLwXk3ivSZ4Pheki/caAu83SbzXBs+nSbp4ryXwfovEe13wfC5MF+91BN5vk3ivD55P03TxXk/g/Q6J94bg+VyULt4bCLzfJfHeGDyfZunivZHA+z0S703B87k4Xbw3EXi/T+L9QfB8mqeL9wcE3h+SeG8Ons8laVv3gcD7IxLvLcHzaZEu3lsIvD8m8d4aPJ9L08V7K4H3JyTenwbP57J08f6UwPszEu9twfNpmS7e2wi8Pyfx/iJ4Ppeni/cXBN5fknh/FTyfVuni/RWB99ck3tuD53NFunhvJ/D+hsT72+D5tE4X728JvL8j8d4RPJ826eK9g8B7J4n398HzaZsu3t8TeP9A4v1j8HzapYv3jwTeP5F47wqeT/t08d5F4P0zifcvwfPpkC7evxB4/0rivTt4Ph3TxXs3gfdvJN6/B8+nU7p4/07g/QeJ957g+XROF+89BN5/knjvDZ5Pl3Tx3kvgHSnE4R0Nnk/XdPGOFgo/j3wk3hnB8+mWLt4ZBN75Sbwzg+dzZbp4ZxJ4FyDxzgqeT/d08c4i8C5I4l0oeD490sW7EIH3ASTeBwbP56p08T6QwLswiXeR4Pn0TBfvIgTeRUm8iwXPp1e6eBcj8D6IxLt48Hx6p4t3cQLvg0m8SwTPp0+6eJcg8C5J4l0qeD5908W7FIH3ISTehwbPp1+6eB9K4H0YiffhwfPpny7ehxN4H0HifWTwfAaki/eRBN5HkXgfHTyfgenifTSB9zEk3qWD53N12tafJfCOkXiXCZ7PoHTxLkPgfSyJ93HB87kmXbyPI/A+nsS7bPB8BqeLd1kC7xNIvMsFz2dIuniXI/AuT+JdIXg+16aLdwUC7xNJvCsGz+e6dPGuSOB9Eol3peD5XJ8u3pUIvE8m8a4cPJ+h6eJdmcC7Col31eD53JAu3lUJvE8h8a4WPJ9h6eJdjcD7VBLv6sHzGZ4u3tUJvE8j8T49eD4j0sX7dALvM0i8awTP58Z08a5B4H0miXfN4PmMTBfvmgTeZ5F41wqez03p4l2LwPtsEu/awfMZlS7etQm865B41w2ez83p4l2XwPscEu96wfMZnS7e9Qi8zyXxrh88n1vSxbs+gfd5JN4NguczJl28GxB4NyTxbhQ8n1vTxbsRgff5JN6Ng+czNl28GxN4X0Di3SR4Preli3cTAu8LSbybBs9nXLp4NyXwvojEu1nwfG5PF+9mBN4Xk3g3D57PHeni3ZzA+xIS7xbB8xmfLt4tCLwvJfG+LHg+E9LF+zIC75Yk3pcHz2diunhfTuDdisT7iuD53Jku3lcQeLcm8W4TPJ9J6eLdhsC7LYl3u+D53JUu3u0IvNuTeHcIns/kdPHuQODdkcS7U/B87k4X704E3p1JvLsEz2dKunh3IfDuSuLdLXg+96SLdzcC7ytJvLsHz2dqunh3J/DuQeJ9VfB87k0X76sIvHuSePcKns+0dPHuReDdm8S7T/B87ksX7z4E3n1JvPsFz+f+dPHuR+Ddn8R7QPB8pqeL9wAC74GGPDK8VNFLM+L/PrNgJHKWl872Uh0vneOlc710npcaeul8L13gpQu9dJGXLvbSJV661EuXeelyL13hpTZeauelDl7q5KUuXurmpe5euspLvbzUx0v9vDTAS1d76RovDfHSdV663ks3eGm4l2700k1eutlLt3jpVi/d5qXbvXSHlyZ46U4v3eWlu710j5fu9dJ9XrrfSzO89ICXHvTSQ1562EuPeOkxLz3upSe89KSXnvLSM15a7KVnvfScl5730oteeslLr3gJa81j/XOsyY11orF2MdbTxRqvWHcUa2FifUasGYh17LC2Gtb7whpUWBcJa/Vg/RisaYJ1NrD2A9YjgEY+dNuhJQ59a2guQwcY2rTQS4WGJ3QloXUI/T1owkGnDNpZ0HOCxhB0b6DFAn0QaFZAR+Gvuf1ewhxozMvFXFHMX8ScOszzwtwjzIfBHA3MG8BYdoyvxphfjEPF2EiM18MYMoxrwlgbjP/AmAR8J8e3W3xPxDcufHfBtwC8n8Y7U7zHw7slvO/AMzieC/GsgvgZMR3iDNz70B+jj0C9zd7yGet8Je/H8QWD9xU4t0ZBez41DHlcbWiHsKOiz/FYJJhdyb/EAl0WiZ5B0Pu1cHD4+5koy4r2ssxnqS+DeGX5z2blPKhQ+Hlck8uyTKkhjHPi+8TrUmWTYTi3isGewQLlXrBA+HkMEeBQk9CXXSvAoRaBw3UCHGoTOFwvwKEugcNQAQ71CBxuEOBQn8BhmACHBgQOwwU4NCJwGCHAoTGBw40CHJoQOIwU4NCUwOEmAQ7NCBxGCXBoTuBwswCHFgQOowU4bM4KP49bBDi0JNSHMQIcWhE43CrAoTWBw1gBDm0JHG4T4NCewGGcAIeOBA63C3DoTOBwhwCHrgQO4wU4XEngMEGAQw8Ch4kCHHoSONwpwKE3gcMkAQ59CRzuEuDQn8BhsgCHgQQOdyuM9yBwmCLAYTCBwz0CHK4lcJgqwKF0/vDzuFeAw1BCfZgmwGEYgcN9AhxGEDjcL8BhJIHDdAEOowgcZghwGE3gMFOAwxgChwcEOIwlcJglwGEcgcODAhxWZ4Sfx2wBDuMJ9eEhAQ4TCRzmCHCYRODwsACHyQQOcwU4TCFweESAw1QCh0cFOEwjcHhMgMMywjixeQIcphPqw+MCHGYSOMwX4DCLwOEJAQ6zCRwWCHCYQ+DwpACHuQQOCwU4PErg8JQAh3kEDk8LcJhP4PCMAIcFBA6LBDgsJHBYLMDhaQKHJQIcFhE4PCvAYQmBw1IBDksJHJ5TeP9A4LBMgMMLBA7PC3BYTuDwggCHlwkcXhTgsILAYbkAh5UEDi8JcHidwOFlAQ6rCBxeEeCwhsBhhQCHtQQOrwpwWEfgsFKAw3oCh9cEOGwgcHhdgMNGAoc3BDhsInBYJcDhAwKH1Qo6OQQOawQ4bCFweFOAw1YCh7UCHD4lcHhLgMM2Aod1Ahy+IHB4W4DDVwQO6wU4bCdweEeAw7cEDhsEOOwgcHhXgMP3BA4bBTj8SODwngCHXQQOmwQ4/ELg8L4Ah90EDh8IcPidwOFDAQ57CBw2C3DYS+DwkQCHKGGdrC0CHDIIHD4W4JBJ4LBVgEMWgcMnAhwKETh8KsDhQAKHzwQ4FCFw2CbAoRiBw+cCHIoTOHwhwKEEgcOXAhxKETh8JcDhUAKHrwU4HE7gsF2Aw5EEDt8IcDiawOFbBV1WAofvBDiUIXDYIcDhOAKHnQIcyhI4fC/AoRyBww8CHCoQOPwowKEigcNPAhwqETjsEuBQmcDhZwEOVQkcfhHgUI3A4VcBDtUJHHYLcDidwOE3AQ41CBx+F+BQk8DhDwEOtQgc9ghwqE3g8KcAh7oEDnsFONQjcIgc8H+fQ30Ch6gAhwYEDvkEODQicMgQ4NCYwCG/AIcmBA6ZAhyaEjgUEODQjMAhS4BDcwKHggIcWhA4FBLgcBmBwwECHC4ncDhQgMMVBA6FBTi0IXAoIsChHYFDUQEOHQgciglw6ETgcJAAhy4EDsUFOHQjcDhYgEN3AocSAhyuInAoKcChF4FDKQEOfQgcDhHg0I/A4VABDgMIHA4zcMjw0klemhH/9xDPvmu9dJ2XrvfSUC/d4KVhXhrupRFeutFLI710k5dGeelmL4320i1eGuOlW7001ku3eWmcl2730h1eGu+lCV6a6KU7vTTJS3d5abKX7vbSFC/d46WpXrrXS9O8dJ+XsD491mbHuuRYkxvrUWMtZqxDjDV4sf4s1l7FuqNYcxPrTWKtRawziDX2sL4c1lbDumJYUwvrSWEtJawjhDV0sH4M1k7BuiFYMwPrRWCtBKwTAI186MNDGx264NDEhh40tJChAwwNXOi/QvsUup/QvITeI7QOofMHjTvou0HbDLpe0LSCnhO0jKDjAw0b6LdAuwS6HdCsgF4DtAowTx9z1DE/G3OTMS8Xc1IxHxNzETEPD3PQMP8Kc48w7wZzTjDfAnMNMM4eY8wxvhpjizGuFmNKMZ4SYwkxjg5jyDB+CmOHMG4GY0YwXgJjBfCdHN+I8X0U3wbxXQzfhPA9BN8C8B4c74Dx/hPv/vDeC+988L4Dz/p4zsUzHp5vENsjrkVMh3gG93Lcx9CHo/9C20W9zd7yJdX5Kp0v7L+16owKiy+q/8yIES3blK/2ZcMhS/pOqLd11507vf8/vmAkck2h4G0E5w8u9O98Ul2XmEcqmw439kcn+RyPRYLZlfxLLNBlkeigQuH3RxYODn8/E2VZsaC5LDOOLxi8LI/gleU/m5XzEQeEn8eRAhwKFgg/j6MEONQkaIccLcChFoHDMQIcahM4lBbgUJfAISbAoR6BQxkBDvUJHI4V4NCAwOE4AQ6NCByOF+DQmMChrACHJgQOJwhwaErgUE6AQzMCh/ICHJoTOFQQ4NCCwOFEAQ6bs8LPo6IAh5aE+nCSAIdWBA6VBDi0JnA4WYBDWwKHygIc2hM4VBHg0JHAoaoAh84EDqcIcOhK4FBNgMOVBA6nCnDoQeBQXYBDTwKH0wQ49CZwOF2AQ18ChzMEOPQncKghwGEggcOZAhwGETjUFOAwmMDhLAEO1xI41BLgUDp/+HmcLcBhKKE+1BbgMIzAoY4AhxEEDnUFOIwkcDhHgMMoAod6AhxGEzicK8BhDIFDfQEOYwkczhPgMI7AoYEAh9UZ4efRUIDDeEJ9aCTAYSKBw/kCHCYRODQW4DCZwOECAQ5TCByaCHCYSuBwoQCHaQQOTQU4LCOME7tIgMN0Qn1oJsBhJoHDxQIcZhE4NBfgMJvA4RIBDnMIHFoIcJhL4HCpAIdHCRwuE+Awj8ChpQCH+QQOlwtwWEDg0EqAw0IChysEODxN4NBagMMiAoc2AhyWEDi0FeCwlMChncL7BwKH9gIcXiBw6CDAYTmBQ0cBDi8TOHQS4LCCwKGzAIeVBA5dBDi8TuDQVYDDKgKHbgIc1hA4XCnAYS2BQ3cBDusIHHoIcFhP4HCVAIcNBA49BThsJHDoJcBhE4FDbwEOHxA49FHQySFw6CvAYQuBQz8BDlsJHPoLcPiUwGGAAIdtBA4DBTh8QeBwtQCHrwgcBglw2E7gcI0Ah28JHAYLcNhB4DBEgMP3BA7XCnD4kcDhOgEOuwgcrhfg8AuBw1ABDrsJHG4Q4PA7gcMwAQ57CByGC3DYS+AwQoBDlLAG2I0CHDIIHEYKcMgkcLhJgEMWgcMoAQ6FCBxuFuBwIIHDaAEORQgcbhHgUIzAYYwAh+IEDrcKcChB4DBWgEMpAofbBDgcSuAwToDD4QQOtwtwOJLA4Q4BDkcTOIxX0GUlcJggwKEMgcNEAQ7HETjcKcChLIHDJAEO5Qgc7hLgUIHAYbIAh4oEDncLcKhE4DBFgENlAod7BDhUJXCYKsChGoHDvQIcqhM4TBPgcDqBw30CHGoQONwvwKEmgcN0AQ61CBxmCHCoTeAwU4BDXQKHBwQ41CNwmCXAoT6Bw4MCHBoQOMwW4NCIwOEhAQ6NCRzmCHBoQuDwsACHpgQOcwU4NCNweESAQ3MCh0cFOLQgcHhMgMNlBA7zBDhcTuDwuACHKwgc5gtwaEPg8IQAh3YEDgsEOHQgcHhSgEMnAoeFAhy6EDg8JcChG4HD0wIcuhM4PCPA4SoCh0UCHHoROCwW4NCHwGGJAId+BA7PCnAYQOCw1MAhw0uVvDQj/u+jvGuP9tIxXiqNv+OlMl461kvHeel4L5X10gleKuel8l6q4KUTvVTRSyd5qZKXTvZSZS9V8VJVL53ipWpeOtVL1b10mpdO99IZXqrhpTO9VNNLZ3mplpfO9lJtL9XxEtanx9rsWJcca3JjPWqsxYx1iLEGL9afxdqrWHcUa25ivUmstYh1BrHGHtaXw9pqWFcMa2phPSmspYR1hLCGDtaPwdopWDcEa2ZgvQislYB1AqCRD314aKNDFxya2NCDhhYydIChgQv9V2ifQvcTmpfQe4TWIXT+oHEHfTdom0HXC5pW0HOClhF0fKBhA/0WaJdAtwOaFdBrgFYB5uljjjrmZ2NuMublYk4q5mNiLiLm4WEOGuZfYe4R5t1gzgnmW2CuAcbZY4w5xldjbDHG1WJMKcZTYiwhxtFhDBnGT2HsEMbNYMwIxktgrAC+k+MbMb6P4tsgvovhmxC+h+BbAN6D4x0w3n/i3R/ee+GdD9534Fkfz7l4xsPzDWJ7xLWI6RDP4F6O+xj6cPRfaLuot9lbPmOdr+j9OD5hrnyVzhf231p1RoXFF9V/ZsSIlm3KV/uy4ZAlfSfU27rrzp3xc488wJ4Prgmax3MH2PqjSj7HY5FgdiX/Egt0WSR6xAHh90fPGfMw/v1MlGXFguayzG+pL8t4ZfnPZuW8jFCWzwtwKFgg/DxeEOBQk6Ad8qIAh1oEDssFONQmcHhJgENdAoeXBTjUI3B4RYBDfQKHFQIcGhA4vCrAoRGBw0oBDo0JHF4T4NCEwOF1AQ5NCRzeEODQjMBhlQCH5gQOqwU4tCBwWCPAYXNW+Hm8KcChJaE+rBXg0IrA4S0BDq0JHNYJcGhL4PC2AIf2BA7rBTh0JHB4R4BDZwKHDQIcuhI4vCvA4UoCh40CHHoQOLwnwKEngcMmAQ69CRzeF+DQl8DhAwEO/QkcPhTgMJDAYbMAh0EEDh8JcBhM4LBFgMO1BA4fC3AonT/8PLYKcBhKqA+fCHAYRuDwqQCHEQQOnwlwGEngsE2AwygCh88FOIwmcPhCgMMYAocvBTiMJXD4SoDDOAKHrwU4rM4IP4/tAhzGE+rDNwIcJhI4fCvAYRKBw3cCHCYTOOwQ4DCFwGGnAIepBA7fC3CYRuDwg8I8NcI4sR8FOEwn1IefBDjMJHDYJcBhFoHDzwIcZhM4/CLAYQ6Bw68CHOYSOOwW4PAogcNvAhzmETj8LsBhPoHDHwIcFhA47BHgsJDA4U8BDk8TOOwV4LCIwCFy4P99DksIHKICHJYSOOQT4LCMwCFDgMMLBA75BTgsJ3DIFODwMoFDAQEOKwgcsgQ4rCRwKCjA4XUCh0ICHFYROBwgwGENgcOBAhzWEjgUFuCwjsChiACH9QQORQU4bCBwKCbAYSOBw0ECHDYROBQX4PABgcPBAhw2EziUEOCwhcChpACHrQQOpQQ4fErgcIgAh20EDocKcPiCwOEwAQ5fETgcLsBhO4HDEQIcviVwOFKAww4Ch6MEOHxP4HC0AIcfCRyOEeCwi8ChtACHXwgcYgIcdhM4lBHg8DuBw7ECHPYQOBwnwGEvgcPxAhyihDUJywpwyCBwOEGAQyaBQzkBDlkEDuUFOBQicKggwOFAAocTBTgUIXCoKMChGIHDSQIcihM4VBLgUILA4WQBDqUIHCoLcDiUwKGKAIfDCRyqCnA4ksDhFAEORxM4VBPgUJrA4VQBDmUIHKoLcDiOwOE0AQ5lCRxOF+BQjsDhDAEOFQgcaghwqEjgcKYAh0oEDjUFOFQmcDhLgENVAodaAhyqETicLcChOoFDbQEOpxM41BHgUIPAoa4Ah5oEDucIcKhF4FBPgENtAodzBTjUJXCoL8ChHoHDeQIc6hM4NBDg0IDAoaEAh0YEDo0EODQmcDhfgEMTAofGAhyaEjhcIMChGYFDEwEOzQkcLhTg0ILAoakAh8sIHC4S4HA5gUMzAQ5XEDhcLMChDYFDcwEO7QgcLhHg0IHAoYUAh04EDpcKcOhC4HCZAIduBA4tBTh0J3C4XIDDVQQOrQQ49CJwuEKAQx8Ch9YCHPoROLQR4DCAwKGtgUOGl0720oz4v184IBJ50UvLvfSSl1720iteWuGlV7200kuveel1L73hpVVeWu2lNV5600trvfSWl9Z56W0vrffSO17a4KV3vbTRS+95aZOX3vfSB1760EubvfSRl7Z46WMvbfXSJ1761EtYnx5rs2NdcqzJjfWosRYz1iHGGrxYfxZrr2LdUay5ifUmsdYi1hnEGntYXw5rq2FdMayphfWksJYS1hHCGjpYPwZrp2DdEKyZgfUisFYC1gmARj704aGNDl1waGJDDxpayNABhgYu9F+hfQrdT2heQu8RWofQ+YPGHfTdoG0GXS9oWkHPCVpG0PGBhg30W6BdAt2OvzQrvAStAszTxxx1zM/G3GTMy8WcVMzHxFxEzMPDHDTMv8LcI8y7wZwTzLfAXAOMs8cYc4yvxthijKvFmFKMp8RYQoyjwxgyjJ/C2CGMm8GYEYyXwFgBfCfHN2J8H8W3QXwXwzchfA/BtwC8B8c7YLz/xLs/vPfCOx+878CzPp5z8YyH5xvE9ohrEdMhnsG9HPcx9OHov9B2UW+zt3zGOn98QY9Nwlz5Kp0v7L+16owKiy+q/8yIES3blK/2ZcMhS/pOqLd11507vf/H+c8fYM/n+QOC59HO2B+d7HM8FglmV/IvsUCXRaLLDgi/PyJy+Gez2liwQPh5tBfgUJOgN9FBgEMtAoeOAhxqEzh0EuBQl8ChswCHegQOXQQ41Cdw6CrAoQGBQzcBDo0IHK4U4NCYwKG7AIcmBA49BDg0JXC4SoBDMwKHngIcmhM49BLg0ILAobcAh81Z4efRR4BDS0J96CvAoRWBQz8BDq0JHPoLcGhL4DBAgEN7AoeBAhw6EjhcLcChM4HDIAEOXQkcrhHgcCWBw2ABDj0IHIYIcOhJ4HCtAIfeBA7XCXDoS+BwvQCH/gQOQwU4DCRwuEGAwyACh2ECHAYTOAwX4HAtgcMIAQ6l84efx40CHIYS6sNIAQ7DCBxuEuAwgsBhlACHkQQONwtwGEXgMFqAw2gCh1sEOIwhcBgjwGEsgcOtAhzGETiMFeCwOiP8PG4T4DCeUB/GCXCYSOBwuwCHSQQOdwhwmEzgMF6AwxQChwkCHKYSOEwU4DCNwOFOAQ7LCOPEJglwmE6oD3cJcJhJ4DBZgMMsAoe7BTjMJnCYIsBhDoHDPQIc5hI4TBXg8CiBw70CHOYROEwT4DCfwOE+AQ4LCBzuF+CwkMBhugCHpwkcZghwWETgMFOAwxIChwcEOCwlcJil8P6BwOFBAQ4vEDjMFuCwnMDhIQEOLxM4zBHgsILA4WEBDisJHOYKcHidwOERAQ6rCBweFeCwhsDhMQEOawkc5glwWEfg8LgAh/UEDvMFOGwgcHhCgMNGAocFAhw2ETg8KcDhAwKHhQo6OQQOTwlw2ELg8LQAh60EDs8IcPiUwGGRAIdtBA6LBTh8QeCwRIDDVwQOzwpw2E7gsFSAw7cEDs8JcNhB4LBMgMP3BA7PC3D4kcDhBQEOuwgcXhTg8AuBw3IBDrsJHF4S4PA7gcPLAhz2EDi8IsBhL4HDCgEOUcI6dq8KcMggcFgpwCGTwOE1AQ5ZBA6vC3AoRODwhgCHAwkcVglwKELgsFqAQzEChzUCHIoTOLwpwKEEgcNaAQ6lCBzeEuBwKIHDOgEOhxM4vC3A4UgCh/UCHI4mcHhHQZeVwGGDAIcyBA7vCnA4jsBhowCHsgQO7wlwKEfgsEmAQwUCh/cFOFQkcPhAgEMlAocPBThUJnDYLMChKoHDRwIcqhE4bBHgUJ3A4WMBDqcTOGwV4FCDwOETAQ41CRw+FeBQi8DhMwEOtQkctglwqEvg8LkAh3oEDl8IcKhP4PClAIcGBA5fCXBoRODwtQCHxgQO2wU4NCFw+EaAQ1MCh28FODQjcPhOgENzAocdAhxaEDjsFOBwGYHD9wIcLidw+EGAwxUEDj8KcGhD4PCTAId2BA67BDh0IHD4WYBDJwKHXwQ4dCFw+FWAQzcCh90CHLoTOPwmwOEqAoffBTj0InD4Q4BDHwKHPQIc+hE4/CnAYQCBw94DbXlY//7xBSORigX/fV2Vzhf231p1RoXFF9V/ZsSIlm3KV/uy4ZAlfSfU27rrzp3e/88sE65dJ8Ttyme0K1I4eB5h+4A6eaznQ0bSdal8ONlw7rEFg58bNbD550ck+DWV43lEbNdF8nvpAC9l+v1Row2VIrYydc3npAgnn4oRWz7J7SXV30f7L1vQ1i7LFdx3IBaxb1YGgw39bL7E3+N1MaPwvjzNmRsazV9/OyO+zxe/DpW7aLJhRhtQSCcaC+lEYyHt3bv3V7/jsUjq/PAj0b/8cfCZhSM5oeSPl0TiscwEwC53rxMd7l6zCHcvF7seNNqVveUPns9EL59o/sLBbco03DUMXKNBfc2umFaWaLj5He5GfnmlOh3nH+JQ3gUKh2tXOUe7skK26wRHuwqGbFepgm52FQrZrrIRN7sOCNku2HSYg10HEuw60sGuwgS7DnWwq4jBLtxXEYnXif8bfQzaM9oO6inqBPjDV/zdggX+/538+FjYFw3OvqDh/lfQeq93CVyLFrbXtWKGuoagr7LP8VjEtll9K1Y4/DwOMra5KpH/tbnkNmd90Pnr2cAQm+JclJM1n4MMeRQ3tocqPsdjkWB2Jf8SC3QZpz0Ud8gDm7W/PTj9/W30nx8RW397sEN/W4JXv/YZa7suWoJQv0oKcEDfFvBc5zxKCXCoSVAyPUSAQy0Ch0MFONQmcDhMgENdAofDBTjUI3A4QoBDfQKHIwU4NCBwOEqAQyMCh6MFODQmcDhGgEMTAofSAhyaEjjEBDg0I3AoI8ChOYHDsQIcWhA4HCfAYXNW+HkcL8ChJaE+lBXg0IrA4QQBDq0JHMoJcGhL4FBegEN7AocKAhw6EjicKMChM4FDRQEOXQkcThLgcCWBQyUBDj0IHE4W4NCTwKGyAIfeBA5VBDj0JXCoKsChP4HDKQIcBhI4VBPgMIjA4VQBDoMJHKoLcLiWwOE0AQ6l84efx+kCHIYS6sMZAhyGETjUEOAwgsDhTAEOIwkcagpwGEXgcJYAh9EEDrUEOIwhcDhbgMNYAofaAhzGETjUEeCwOiP8POoKcBhPqA/nCHCYSOBQT4DDJAKHcwU4TCZwqC/AYQqBw3kCHKYSODQQ4DCNwKGhAIdlhHFijQQ4TCfUh/MFOMwkcGgswGEWgcMFAhxmEzg0EeAwh8DhQgEOcwkcmgpweJTA4SIBDvMIHJoJcJhP4HCxAIcFBA7NBTgsJHC4xKi3UzWyT28HmgnQC8BcecwTxxxpzA/G3FjMC8WcSMwH/GsunJcwBwrzfzD3BfM+MOcB4/0x1h3jvDHGGeN7MbYV4zoxphHj+TCWDeO4MIYJ43cwdgXjNjBmAd/r8a0a32nxjRLf5/BtCt9l8E0C7+PxLhrvYfEOEu/f8O4J713wzgHP23jWxHMWnjEQXyO2RFyFmAL3U9xL0I+iD0H7Qd0Bt+zNqoMDtVyr3g50Oqz5lDTk0cLYHqr6HI9FgtmV/EssEmij6KG0cMgDm1Vv59Lg+YSlt/NXdbLyQV2E7cnXpfL3Ml792mes7broZYT61VKAA0Nv53IBDgy9nVYCHBh6O1cIcGDo7bQW4MDQ22kjwIGht9NWgANDb6edAAeG3k57AQ4MvZ0OAhwYejsdBTgw9HY6CXBg6O10FuDA0NvpIsCBobfTVYADQ2+nmwAHht7OlQIcGHo73QU4MPR2eghwYOjtXCXAgaG301OAA0Nvp5cAB4beTm8BDgy9nT4CHBh6O30FODD0dvoJcGDo7fQX4MDQ2xkgwIGhtzNQgANDb+dqAQ4MvZ1BAhwYejvXCHBg6O0MFuDA0NsZIsCBobdzrQAHht7OdQIcGHo71wtwYOjtDBXgwNDbuUGAA0NvZ5gAB4beznABDgy9nRECHBh6OzcKcGDo7YwU4MDQ27lJgANDb2eUAAeG3s7NAhwYejujBTgw9HZuEeDA0NsZI8CBobdzqwAHht7OWAEODL2d2wQ4MPR2xglwYOjt3C7AgaG3c4cAB4bezngBDgy9nQkCHBh6OxMFODD0du4U4MDQ25kkwIGht3OXAAeG3s5kAQ4MvZ27BTgw9HamGDhAU+SUyD69HWgmQC8Ac+UxTxxzpDE/GHNjMS8UcyIxHxBz4TAPDHOgMP8Hc18w7wNzHjDeH2PdMc4bY5wxvhdjWzGuE2MaMZ4PY9kwjgtjmDB+B2NXMG4DYxbwvR7fqvGdFt8o8X0O36bwXQbfJPA+Hu+i8R4W7yDx/g3vnvDeBe8c8LyNZ008Z+EZA/E1YkvEVYgpcD/FvQT9KPoQtB/UHXDL3qw6OCfhRwL3IHo70Omw5tPSkMc9xvZwis/xWCSYXcm/xAJdxtFDucchD2xWvZ2pwfMJS2/nL5OtfFAXYXvydan8vZdXv/YZa7suei+hfk0T4MDQ27lPgANDb+d+AQ4MvZ3pAhwYejszBDgw9HZmCnBg6O08IMCBobczS4ADQ2/nQQEODL2d2QIcGHo7DwlwYOjtzBHgwNDbeViAA0NvZ64AB4beziMCHBh6O48KcGDo7TwmwIGhtzNPgANDb+dxAQ4MvZ35AhwYejtPCHBg6O0sEODA0Nt5UoADQ29noQAHht7OUwIcGHo7TwtwYOjtPCPAgaG3s0iAA0NvZ7EAB4bezhIBDgy9nWcFODD0dpYKcGDo7TwnwIGht7NMgANDb+d5AQ4MvZ0XBDgw9HZeFODA0NtZLsCBobfzkgAHht7OywIcGHo7rwhwYOjtrBDgwNDbeVWAA0NvZ6UAB4bezmsCHBh6O68LcGDo7bwhwIGht7NKgANDb2e1AAeG3s4aAQ4MvZ03BTgw9HbWCnBg6O28JcCBobezToADQ2/nbQEODL2d9QIcGHo77whwYOjtbBDgwNDbeVeAA0NvZ6MAB4beznsCHBh6O5sEODD0dt4X4MDQ2/lAgANDb+dDAwcIdFSL7NPbgWYC9AIwVx7zxDFHGvODMTcW80IxJxLzATEXDvPAMAcK838w9wXzPjDnAeP9MdYd47wxxhnjezG2FeM6MaYR4/kwlg3juDCGCeN3MHYF4zYwZgHf6/GtGt9p8Y0S3+fwbQrfZfBNAu/j8S4a72HxDhLv3/DuCe9d8M4Bz9t41sRzFp4xEF8jtkRchZgC91PcS9CPog9B+0HdAbfszaqDM7hQxKy3A50Oaz7TDHlsNraHaj7HY5FgdiX/Egt0GUcPZbNDHtisejsfBc8nLL2d/Phh5YO6CNuTr0vl7xZe/dpnrO266BZC/fpYgANDb2erAAeG3s4nAhwYejufCnBg6O18JsCBobezTYADQ2/ncwEODL2dLwQ4MPR2vhTgwNDb+UqAA0Nv52sBDgy9ne0CHBh6O98IcGDo7XwrwIGht/OdAAeG3s4OAQ4MvZ2dAhwYejvfC3Bg6O38IMCBobfzowAHht7OTwIcGHo7uwQ4MPR2fhbgwNDb+UWAA0Nv51cBDgy9nd0CHBh6O78JcGDo7fwuwIGht/OHAAeG3s4eAQ4MvZ0/BTgw9Hb2CnBg6O1Eivzf58DQ24kKcGDo7eQT4MDQ28kQ4MDQ28kvwIGht5MpwIGht1NAgANDbydLgANDb6egAAeG3k4hAQ4MvZ0DBDgw9HYOFODA0NspLMCBobdTRIADQ2+nqAAHht5OMQEODL2dgwQ4MPR2igtwYOjtHCzAgaG3U0KAA0Nvp6QAB4beTikBDgy9nUMEODD0dg4V4MDQ2zlMgANDb+dwAQ4MvZ0jBDgw9HaOFODA0Ns5SoADQ2/naAEODL2dYwQ4MPR2SgtwYOjtxAwcoClyamSf3g40E6AXgLnymCeOOdKYH4y5sZgXijmRmA+IuXCYB4Y5UJj/g7kvmPeBOQ8Y74+x7hjnjTHOGN+Lsa0Y14kxjRjPh7FsGMeFMUwYv4OxKxi3gTEL+F6Pb9X4TotvlPg+h29T+C6DbxJ4H4930XgPi3eQeP+Gd09474J3DnjexrMmnrPwjIH4GrEl4irEFLif4l6CfhR9CNrPX3WnyD4uVh2civhh1Nv52EFv52NDHmWM7eFUn+OxSDC7kn+JBbqMo4di4ZC4WfV2jg2eT1h6O5n4YeWDugjbk69L5e9xvPq1z1jbddHjioSfx/ECHBh6O2UFODD0dk4Q4MDQ2yknwIGht1NegANDb6eCAAeG3s6JAhwYejsVBTgw9HZOEuDA0NupJMCBobdzsgAHht5OZQEODL2dKgIcGHo7VQU4MPR2ThHgwNDbqSbAgaG3c6oAB4beTnUBDgy9ndMEODD0dk4X4MDQ2zlDgANDb6eGAAeG3s6ZAhwYejs1BTgw9HbOEuDA0NupJcCBobdztgAHht5ObQEODL2dOgIcGHo7dQU4MPR2zhHgwNDbqSfAgaG3c64AB4beTn0BDgy9nfMEODD0dhoIcGDo7TQU4MDQ22kkwIGht3O+AAeG3k5jAQ4MvZ0LBDgw9HaaCHBg6O1cKMCBobfTVIADQ2/nIgEODL2dZgIcGHo7FwtwYOjtNBfgwNDbuUSAA0Nvp4UAB4bezqUCHBh6O5cJcGDo7bQU4MDQ27lcgANDb6eVAAeG3s4VAhwYejutBTgw9HbaCHBg6O20FeDA0NtpJ8CBobfTXoADQ2+ngwAHht5ORwEODL2dTgIcGHo7nY16O9Uj+/R2oJkAvQDMlcc8ccyRxvxgzI3FvFDMicR8QMyFwzwwzIHC/B/MfcG8D8x5wHh/jHXHOG+Mccb4XoxtxbhOjGnEeD6MZcM4LoxhwvgdjF3BuA2MWcD3enyrxndafKPE9zl8m8J3GXyTwPt4vIvGe1i8g8T7N7x7wnsXvHPA8zaeNfGchWcMxNeILRFXIabA/RT3EvSj6EPQflB3wC17s+rgQLMkw6i3A50Oaz6J2h6p8uhibA/VfY7HIsHsSv4lFugyjh5KF4c8sFn1droGzycsvZ0C+GHlg7oI25OvS+VvN1792mes7bpoN0L9utKYh7nNe/eMssHvG9ETvHPLFbSXZ3eB8mToBvUQ4MDQDbpKgANDN6inAAeGblAvAQ4M3aDeAhwYukF9BDgwdIP6CnBg6Ab1E+DA0A3qL8CBoRs0QIADQzdooAAHhm7Q1QIcGLpBgwQ4MHSDrhHgwNANGizAgaEbNESAA0M36FoBDgzdoOsEODB0g64X4MDQDRoqwIGhG3SDAAeGbtAwAQ4M3aDhAhwYukEjBDgwdINuFODA0A0aKcCBoRt0kwAHhm7QKAEODN2gmwU4MHSDRgtwYOgG3SLAgaEbNEaAA0M36FYBDgzdoLECHBi6QbcJcGDoBo0T4MDQDbpdgANDN+gOAQ4M3aDxAhwYukETBDgwdIMmCnBg6AbdKcCBoRs0SYADQzfoLgEODN2gyQIcGLpBdwtwYOgGTRHgwNANukeAA0M3aKoAB4Zu0L0CHBi6QdMEODB0g+4T4MDQDbpfgANDN2i6AAeGbtAMAQ4M3aCZAhwYukEPCHBg6AbNEuDA0A16UIADQzdotgAHhm7QQwIcGLpBcwQ4MHSDHhbgwNANmmvgAG2U0yL7dIOgmQC9AMyVxzxxzJHG/GDMjcW8UMyJxHxAzIXDPDDMgcL8H8x9wbwPzHnAeH+Mdcc4b4xxxvhejG3FuE6MacR4PoxlwzgujGHC+B2MXcG4DYxZwPd6fKvGd1p8o8T3OXybwncZfJPA+3i8i8Z7WLyDxPs3vHvCexe8c8DzNp418ZyFZwzE14gtEVchpsD9FPcS9KPoQ9B+UHfALXtL1vYIogNk0A/5S6sFOh3J+aS6LjGPVDY9UsTWHk7zOR6LBLMr+ZdYoMs4ui6POOSBzaob9GjwfMLSDcrCDysf1EXYnnxdKn8f49Wvfcbaros+Rqhf8wQ4MPR2HhfgwNDbmS/AgaG384QAB4bezgIBDgy9nScFODD0dhYKcGDo7TwlwIGht/O0AAeG3s4zAhwYejuLBDgw9HYWC3Bg6O0sEeDA0Nt5VoADQ29nqQAHht7OcwIcGHo7ywQ4MPR2nhfgwNDbeUGAA0Nv50UBDgy9neUCHBh6Oy8JcGDo7bwswIGht/OKAAeG3s4KAQ4MvZ1XBTgw9HZWCnBg6O28JsCBobfzugAHht7OGwIcGHo7qwQ4MPR2VgtwYOjtrBHgwNDbeVOAA0NvZ60AB4bezlsCHBh6O+sEODD0dt4W4MDQ21kvwIGht/OOAAeG3s4GAQ4MvZ13BTgw9HY2CnBg6O28J8CBobezSYADQ2/nfQEODL2dDwQ4MPR2PhTgwNDb2SzAgaG385EAB4bezhYBDgy9nY8FODD0drYKcGDo7XwiwIGht/OpAAeG3s5nAhwYejvbBDgw9HY+F+DA0Nv5QoADQ2/nSwEODL2drwQ4MPR2vhbgwNDb2S7AgaG3840AB4bezrcGDtAUOT2yT28HmgnQC8BcecwTxxxpzA/G3FjMC8WcSMwHxFw4zAPDHCjM/8HcF8z7wJwHjPfHWHeM88YYZ4zvxdhWjOvEmEaM58NYNozjwhgmjN/B2BWM28CYBXyvx7dqfKfFN0p8n8O3KXyXwTcJvI/Hu2i8h8U7SLx/w7snvHfBOwc8b+NZE89ZeMZAfI3YEnEVYgrcT3EvQT+KPgTtB3UH3LI3qw4ONEvyFd53fhB9Huh0WPNJ1PZIlcd3xvZwus/xWCSYXcm/xAJdxtFD+c4hD2xWvZ0dwfOJGvR2oga9neg/PyK2ugvbk69L5e9OA1f87Yz43u86F32roOd+X8TGL3uzlv8P6S//vy+I5LQ71enZfZdLn5d9bio2PzrWlcTrrPYd791rywe/30ZPiJ9vbQc/GfsXFz8qGP2o4ODHLt79Yp+xtusoulE/C3Bg6Eb9IsCBoRv1qwAHhm7UbgEODN2o3wQ4MHSjfhfgwNCN+kOAA0M3ao8AB4Zu1J8CHBi6UXsFODB0oyJF/+9zYOhGRQU4MHSj8glwYOhGZQhwYOhG5RfgwNCNyhTgwNCNKiDAgaEblSXAgaEbVVCAA0M3qpAAB4Zu1AECHBi6UQcKcGDoRhUW4MDQjSoiwIGhG1VUgANDN6qYAAeGbtRBAhwYulHFBTgwdKMOFuDA0I0qIcCBoRtVUoADQzeqlAAHhm7UIQIcGLpRhwpwYOhGHSbAgaEbdbgAB4Zu1BECHBi6UUcKcGDoRh0lwIGhG3W0AAeGbtQxAhwYulGlBTgwdKNiAhwYulFlBDgwdKOOFeDA0I06ToADQzfqeAEODN2osgIcGLpRJwhwYOhGlRPgwNCNKi/AgaEbVUGAA0M36kQBDgzdqIoCHBi6UScJcGDoRlUS4MDQjTpZgANDN6qyAAeGblQVAQ4M3aiqAhwYulGnCHBg6EZVE+DA0I06VYADQzeqelFbHta/D72QnQ46M0vLhGsX9GF+KGLXoDktOK9o2D5A8yNS+N+aNamuO75gcH9PN/g70+Bvfi9Beivq94fi+1gkWL7Vgp+bI78ziuYiQ1xsva5G0eDgXe2qUXTfgVgk+ObSsH90aNjPh9wouhf5W/zJatcLRruyN6tg1JmGBmVgFTXYH/3nh8HuUyN/163kDjNVXqca8qgZ8s0I7GsWtft+lsEu/O1sISu/66w3nJqGPqNWUVsdyN6sdfjs9NfhvzYX8TKDcNdfQcJPDn1J7aLh+7HL6McuBz/qhNweYddpRe1tom6IQZhLWViCJPh8ukMfdI6hLBBcFYrv/2VAUr6p7LUEV7nJp2qEk8/ZuazTKR8QIn/3p9Z6lGE497SInVU0+ZdYoMsi0ZohA6se+fsmZwVmuTHWMzYexND5/DI12hi00e7du/djv+OxSOo88CPR1nPjDwD1i0ZyRiPnxnudxGP1fQy0Pk6eE6wgJnoFET3XUGj1jfCsFQ8V6FzHpyUXOc/2B9oe7Ss7yHmeVzR8PzoY/aji4EcDgh8djX5UdfCjIcGPTkY/TnHwoxHBj85GP6o5+HF+yBEt/OhyoN2uxgS7ujrYdQHBrm4OdjUh2HWlg10XEuzq7mBXU4JdPRzsuohg11UOdjUj2NXTwa6LCXb1crCrOcGu3g52XUKwq4+DXS0IdvV1sOtSgl39HOy6jGBXfwe7WhLsGuBg1+UEuwY62NWKYNfVDnZdQbBrkINdrQl2XeNgVxuCXYMd7GpLsGuIg13tCHZd62BXe4Jd1znY1YFg1/UOdnUk2DXUwa5OBLtucLCrM8GuYQ52dSHYNdzBrq4Eu0Y42NWNYNeNDnZdSbBrpINd3Ql23eRgVw+CXaMc7LqKYNfNDnb1JNg12sGuXgS7bnGwqzfBrjEOdvUh2HWrg119CXaNdbCrH8Gu2xzs6k+wa5yDXQMIdt3uYNdAgl13ONh1NcGu8Q52DSLYNcHBrmsIdk10sGswwa47HewaQrBrkoNd1xLsusvBrusIdk12sOt6gl13O9g1lGDXFAe7biDYdY+DXcMIdk11sGs4wa57HewaQbBrmoNdNxLsus/BrpEEu+53sOsmgl3THewaRbBrhoNdNxPsmulg12iCXQ842HULwa5ZDnaNIdj1oINdtxLsmu1g11iCXQ852HUbwa45DnaNI9j1sINdtxPsmutg1x0Eux5xsGs8wa5HHeyaQLDrMQe7JhLsmudg150Eux53sGsSwa75DnbdRbDrCQe7JhPsWuBg190Eu550sGsKwa6FDnbdQ7DrKQe7phLsetrBrnsJdj3jYNc0gl2LHOy6j2DXYge77ifYtcTBrukEu551sGsGwa6lDnbNJNj1nINdDxDsWuZg1yyCXc872PUgwa4XHOyaTbDrRQe7HiLYtdzBrjkEu15ysOthgl0vO9g1l2DXKw52PUKwa4WDXY8S7HrVwa7HCHatdLBrHsGu1xzsepxg1+sOds0n2PWGg11PEOxa5WDXAoJdqx3sepJg1xoHuxYS7HrTwa6nCHatdbDraYJdbznY9QzBrnUOdi0i2PW2g12LCXatd7BrCcGudxzsepZg1wYHu5YS7HrXwa7nCHZtdLBrGcGu9xzsep5g1yYHu14g2PW+g10vEuz6wMGu5QS7PnSw6yWCXZsd7HqZYNdHDna9QrBri4NdKwh2fexg16sEu7Y62LWSYNcnDna9RrDrUwe7XifY9ZmDXW8Q7NrmYNcqgl2fO9i1mmDXFw52rSHY9aWDXW8S7PrKwa61BLu+drDrLYJd2x3sWkew6xsHu94m2PWtg13rCXZ952DXOwS7djjYtYFg104Hu94l2PW9g10bCXb94GDXewS7fnSwaxPBrp8c7HqfYNcuB7s+INj1s4NdHxLs+sXBrs0Eu351sOsjgl27HezaQrDrNwe7PibY9buDXVsJdv3hYNcnBLv2ONj1KcGuPx3s+oxg114Hu7YZ7MJ6CGd4aUb839DYhz49tN2hiw5Nceh3QysbutTQgIbeMrSNoSMMzV7o40KLFrqv0FiFnim0Q6HTCU1M6E9C6xG6itAwhF4gtPmggwfNOei7QUsNumXQCIMeF7SvoDMFTSfoJ0GrCLpA0OCB3g20ZaDjAs0U6JNACwS6G9C4gJ4EtBugkwBNAsz/x1x7zGvHHHLM18bcaMxDxpxfzK/FXFbMG8UcTcyHxNxDzPPDnDrMX8NcMczLwhwozDfC3B7Mo8GcFcwPwVwMzHvAHAOM58fYeYxTx5hwjL/GWGeMK8YYXoyXxdhUjAPFmEuMb8RYQozbwxg5jEfD2C+Ms8KYJowfwlgdjIvBGBSM98DYCoxjwJgBfJ/Ht3B8d8Y3XnxPxbdLfCfENzl8/8K3JnzXwTcUfK/AtwG8h8c7b7xfxrtcvDfFO0q8D8S7N7znwjslvL/BuxK8l8A7ADxv49kWz5F4ZsPzEZ5FEPcjxkY8i9gRcRpiIsQfuNfjvop7GO4X6JvRD6LPQftGW0K9dWwrmVjvAmt1WNvK50WDt5V88baSvMUits3aD1hsdM3jC2Me5pWkIjkXqklVLtkL51jL88uitr6vRuR/fd//+r7/W32fyyqKhvb71+JSaCfWNpyYRyqbvipq61dr+ByPRYLZlfxLLNBlnH71K2Merve9MBcY+5pXlvsMtF0X/ZpQltsFOBQsEH4e3whwqFkw/Dy+FeBQi8DhOwEOtQkcdghwqEvgsFOAQz0Ch+8FONQncPhBgEMDAocfBTg0InD4SYBDYwKHXQIcmhA4/CzAoSmBwy8CHJoROPwqwKE5gcNuAQ4tCBx+E+CwOSv8PH4X4NCSUB/+EODQisBhjwCH1gQOfwpwaEvgsFeAQ3sCh0ix//scOhI4RAU4dCZwyCfAoSuBQ4YAhysJHPILcOhB4JApwKEngUMBAQ69CRyyBDj0JXAoKMChP4FDIQEOAwkcDhDgMIjA4UABDoMJHAoLcLiWwKGIAIfS+cPPo6gAh6GE+lBMgMMwAoeDBDiMIHAoLsBhJIHDwQIcRhE4lBDgMJrAoaQAhzEEDqUEOIwlcDhEgMM4AodDBTiszgg/j8MEOIwn1IfDBThMJHA4QoDDJAKHIwU4TCZwOEqAwxQCh6MFOEwlcDhGgMM0AofSAhyWEcaJxQQ4TCfUhzICHGYSOBwrwGEWgcNxAhxmEzgcL8BhDoFDWQEOcwkcThDg8CiBQzkBDvMIHMoLcJhP4FBBgMMCAocTBTgsJHCoKMDhaQKHkwQ4LCJwqCTAYQmBw8kCHJYSOFRWeP9A4FBFgMMLBA5VBTgsJ3A4RYDDywQO1QQ4rCBwOFWAw0oCh+oCHF4ncDhNgMMqAofTBTisIXA4Q4DDWgKHGgIc1hE4nCnAYT2BQ00BDhsIHM4S4LCRwKGWAIdNBA5nC3D4gMChtgCHzQQOdQQ4bCFwqCvAYSuBwzkCHD4lcKgnwGEbgcO5Ahy+IHCoL8DhKwKH8wQ4bCdwaCDA4VsCh4YCHHYQODQS4PA9gcP5Ahx+JHBoLMBhF4HDBQIcfiFwaCLAYTeBw4UCHH4ncGgqwGEPgcNFAhz2Ejg0E+AQLRR+HhcLcMggcGguwCGTwOESAQ5ZBA4tBDgUInC4VIDDgQQOlwlwKELg0FKAQzECh8sFOBQncGglwKEEgcMVAhxKETi0FuBwKIFDGwEOhxM4tBXgcCSBQzsBDkcTOLRX0GUlcOggwKEMgUNHAQ7HETh0EuBQlsChswCHcgQOXQQ4VCBw6CrAoSKBQzcBDpUIHK4U4FCZwKG7AIeqBA49BDhUI3C4SoBDdQKHngIcTidw6CXAoQaBQ28BDjUJHPoIcKhF4NBXgENtAod+AhzqEjj0F+BQj8BhgACH+gQOAwU4NCBwuFqAQyMCh0ECHBoTOFwjwKEJgcNgAQ5NCRyGCHBoRuBwrQCH5gQO1wlwaEHgcL0Ah8sIHIYKcLicwOEGAQ5XEDgME+DQhsBhuACHdgQOIwQ4dCBwuFGAQycCh5ECHLoQONwkwKEbgcMoAQ7dCRxuFuBwFYHDaAEOvQgcbhHg0IfAYYwAh34EDrcKcBhA4DDWwCHDS2d6aUb8398UjUS+9dJ3XtrhpZ1e+t5LP3jpRy/95KVdXvrZS7946Vcv7fbSb1763Ut/eGmPl/700l4vRTxbol7K56UML+X3UqaXCngpy0sFvVTISwd46UAvFfZSES8V9VIxLx3kJaxPj7XZsS451uTGetRYixnrEGMNXqw/i7VXse4o1tzEepNYa/GvdQa9hPXlsLYa1hXDmlpYTwprKWEdIayhg/VjsHYK1g3BmhlYLwJrJWCdAGjkQx8e2ujQBYcmNvSgoYUMHWBo4EL/Fdqn0P2E5iX0HqF1CJ0/aNxB3w3aZtD1gqYV9JygZQQdH2jYQL8F2iXQ7YBmBfQaoFWAefqYo4752ZibjHm5mJOK+ZiYi4h5eJiDhvlXmHuEeTeYc4L5FphrgHH2GGOO8dUYW4xxtRhTivGUGEuIcXQYQ4bxUxg7hHEzGDOC8RIYK4Dv5PhGjO+j+DaI72L4JoTvIfgWgPfgeAeM959494f3Xnjng/cdeNbHcy6e8fB8g9gecS1iOsQzuJfjPoY+HP0X2i7qbfaWz1jnq3k/ahbdd36Vzhf231p1RoXFF9V/ZsSIlm3KV/uy4ZAlfSfU27rrzp3xc7cXteez3ZDHbcVs/dGZPsdjkWB2Jf8SC3RZJPp10fD7IwsHh7+fibI8x16W+Sz1ZRyvLP/ZrJzHFQs/j9tzWZapOON+dFp8n3hdqmwyDOeeZrDnDoFyL1gg/DzGC3CoSdBKmSDAoRaBw0QBDrUJHO4U4FCXwGGSAId6BA53CXCoT+AwWYBDAwKHuwU4NCJwmCLAoTGBwz0CHJoQOEwV4NCUwOFeAQ7NCBymCXBoTuBwnwCHFgQO9wtw2JwVfh7TBTi0JNSHGQIcWhE4zBTg0JrA4QEBDm0JHGYJcGhP4PCgAIeOBA6zBTh0JnB4SIBDVwKHOQIcriRweFiAQw8Ch7kCHHoSODwiwKE3gcOjAhz6Ejg8JsChP4HDPAEOAwkcHhfgMIjAYb4Ah8EEDk8IcLiWwGGBAIfS+cPP40kBDkMJ9WGhAIdhBA5PCXAYQeDwtACHkQQOzwhwGEXgsEiAw2gCh8UCHMYQOCwR4DCWwOFZhfHkBA5LBTiszgg/j+cEOIwn1IdlAhwmEjg8L8BhEoHDCwIcJhM4vCjAYQqBw3IBDlMJHF4S4DCNwOFlAQ7LCOPEXhHgMJ1QH1YIcJhJ4PCqAIdZBA4rBTjMJnB4TYDDHAKH1wU4zCVweEOAw6MEDqsEOMwjcFgtwGE+gcMaAQ4LCBzeFOCwkMBhrQCHpwkc3hLgsIjAYZ0AhyUEDm8LcFhK4LBe4f0DgcM7AhxeIHDYIMBhOYHDuwIcXiZw2CjAYQWBw3sCHFYSOGwS4PA6gcP7AhxWETh8IMBhDYHDhwIc1hI4bBbgsI7A4SMBDusJHLYIcNhA4PCxAIeNBA5bBThsInD4RIDDBwQOnyro5BA4fCbAYQuBwzYBDlsJHD4X4PApgcMXAhy2ETh8KcDhCwKHrwQ4fEXg8LUAh+0EDtsFOHxL4PCNAIcdBA7fCnD4nsDhOwEOPxI47BDgsIvAYacAh18IHL4X4LCbwOEHAQ6/Ezj8KMBhD4HDTwIc9hI47BLgECWswfizAIcMAodfBDhkEjj8KsAhi8BhtwCHQgQOvwlwOJDA4XcBDkUIHP4Q4FCMwGGPAIfiBA5/CnAoQeCwV4BDKQKHyEH/9zkcSuAQFeBwOIFDPgEORxI4ZAhwOJrAIb8Ah9IEDpkCHMoQOBQQ4HAcgUOWAIeyBA4FBTiUI3AoJMChAoHDAQIcKhI4HCjAoRKBQ2EBDpUJHIoIcKhK4FBUgEM1AodiAhyqEzgcJMDhdAKH4gIcahA4HCzAoSaBQwkBDrUIHEoKcKhN4FBKgENdAodDBDjUI3A4VIBDfQKHwwQ4NCBwOFyAQyMChyMEODQmcDhSgEMTAoejBDg0JXA4WoBDMwKHYwQ4NCdwKC3AoQWBQ0yAw2UEDmUEOFxO4HCsAIcrCByOE+DQhsDheAEO7Qgcygpw6EDgcIIAh04EDuUEOHQhcCgvwKEbgUMFAQ7dCRxOFOBwFYFDRQEOvQgcThLg0IfAoZIAh34EDicLcBhA4FDZwCHDSzW9NCP+7/HFIpEJXpropTu9NMlLd3lpspfu9tIUL93jpaleutdL07x0n5fu99J0L83w0kwvPeClWV560EuzvfSQl+Z46WEvzfXSI1561EuPeWmelx730nwvPeGlBV560ksLvfSUl7A+PdZmx7rkWJMb61FjLWasQ4w1eLH+LNZexbqjWHMT601irUWsM4g19rC+HNZWw7piWFML60lhLSWsI4Q1dLB+DNZOwbohWDMD60VgrQSsEwCNfOjDQxsduuDQxIYeNLSQoQMMDVzov0L7FLqf0LyE3iO0DqHzB4076LtB2wy6XtC0gp4TtIyg4wMNG+i3QLsEuh3QrIBeA7QKME8fc9QxPxtzkzEvF3NSMR8TcxExDw9z0DD/CnOPMO8Gc04w3wJzDTDOHmPMMb4aY4sxrhZjSjGeEmMJMY4OY8gwfgpjhzBuBmNGMF4CYwXwnRzfiPF9FN8G8V0M34TwPQTfAvAeHO+A8f4T7/7+eu/lJbzvwLM+nnPxjIfnG8T2iGsR0yGewb0c9zH04ei/0HZRb7O3fEl1vkrnC/tvrTqjwuKL6j8zYkTLNuWrfdlwyJK+E+pt3XXnTtThopHI7cHnHUVx/h3F/p1PqusS80hlUxVjf1TT53gsEsyu5F9igS6LRMcVC78/snBw+PuZKMtziprLMgPXZZ+bqiyr8sryn83KuepB4edxigCHggXCz6OaAIeaBO2QUwU41CJwqC7AoTaBw2kCHOoSOJwuwKEegcMZAhzqEzjUEODQgMDhTAEOjQgcagpwaEzgcJYAhyYEDrUEODQlcDhbgEMzAofaAhyaEzjUEeDQgsChrgCHzVnh53GOAIeWhPpQT4BDKwKHcwU4tCZwqC/AoS2Bw3kCHNoTODQQ4NCRwKGhAIfOBA6NBDh0JXA4X4DDlQQOjQU49CBwuECAQ08ChyYCHHoTOFwowKEvgUNTAQ79CRwuEuAwkMChmQCHQQQOFwtwGEzg0FyAw7UEDpcIcCidP/w8WghwGEqoD5cKcBhG4HCZAIcRBA4tBTiMJHC4XIDDKAKHVgIcRhM4XCHAYQyBQ2sBDmMJHNoIcBhH4NBWgMPqjPDzaCfAYTyhPrQX4DCRwKGDAIdJBA4dBThMJnDoJMBhCoFDZwEOUwkcughwmEbg0FWAwzLCOLFuAhymE+rDlQIcZhI4dBfgMIvAoYcAh9kEDlcJcJhD4NBTgMNcAodeAhweJXDoLcBhHoFDHwEO8wkc+gpwWEDg0E+Aw0ICh/4CHJ4mcBggwGERgcNAAQ5LCByuFuCwlMBhkML7BwKHawQ4vEDgMFiAw3IChyECHF4mcLhWgMMKAofrBDisJHC4XoDD6wQOQwU4rCJwuEGAwxoCh2ECHNYSOAwX4LCOwGGEAIf1BA43CnDYQOAwUoDDRgKHmwQ4bCJwGCXA4QMCh5sVdHIIHEYLcNhC4HCLAIetBA5jBDh8SuBwqwCHbQQOYwU4fEHgcJsAh68IHMYJcNhO4HC7AIdvCRzuEOCwg8BhvACH7wkcJghw+JHAYaIAh10EDncKcPiFwGGSAIfdBA53CXD4ncBhsgCHPQQOdwtw2EvgMEWAQ5SwJuE9AhwyCBymCnDIJHC4V4BDFoHDNAEOhQgc7hPgcCCBw/0CHIoQOEwX4FCMwGGGAIfiBA4zBTiUIHB4QIBDKQKHWQIcDiVweFCAw+EEDrMFOBxJ4PCQAIejCRzmKOiyEjg8LMChDIHDXAEOxxE4PCLAoSyBw6MCHMoRODwmwKECgcM8AQ4VCRweF+BQicBhvgCHygQOTwhwqErgsECAQzUChycFOFQncFgowOF0AoenBDjUIHB4WoBDTQKHZwQ41CJwWCTAoTaBw2IBDnUJHJYIcKhH4PCsAIf6BA5LBTg0IHB4ToBDIwKHZQIcGhM4PC/AoQmBwwsCHJoSOLwowKEZgcNyAQ7NCRxeEuDQgsDhZQEOlxE4vCLA4XIChxUCHK4gcHhVgEMbAoeVAhzaETi8JsChA4HD6wIcOhE4vCHAoQuBwyoBDt0IHFYLcOhO4LBGgMNVBA5vCnDoReCwVoBDHwKHtwQ49CNwWCfAYQCBw9sGDhleOstLM+L/ruZde6qXqnvpNC+d7qUzvFTDS2d6qaaXzvJSLS+d7aXaXqrjpbpeOsdL9bx0rpfqe+k8LzXwUkMvNfLS+V5q7KULvNTESxd6qamXLvJSMy9d7KXmXrrESy28dKmXLvMS1qfH2uxYlxxrcmM9aqzFjHWIsQYv1p/F2qtYdxRrbmK9Say1iHUGscYe1pfD2mpYVwxramE9KaylhHWEsIYO1o/B2ilYNwRrZmC9CKyVgHUCoJEPfXhoo0MXHJrY0IOGFjJ0gKGBC/1XaJ9C9xOal9B7hNYhdP6gcQd9N2ibQdcLmlbQc4KWEXR8oGED/RZol0C3A5oV0GuAVgHm6WOOOuZnY24y5uViTirmY2IuIubhYQ4a5l9h7hHm3WDOCeZbYK4BxtljjDnGV2NsMcbVYkwpxlNiLCHG0WEMGcZPYewQxs1gzAjGS2CsAL6T4xsxvo/i2yC+i+GbEL6H4FsA3oPjHTDef+LdH9574Z0P3nfgWR/PuXjGw/MNYnvEtYjpEM/gXo77GPpw9F9ou6i32Vs+Y52v6v2oWXTf+VU6X9h/a9UZFRZfVP+ZESNatilf7cuGQ5b0nVBv6647d8bPPeUgez64Jmge6w+y9Udn+RyPRYLZlfxLLNBlHreDwu+P1hvzMP79TJTlOUXNZZnfUl/e4ZXlP5uV8zuEstwgwKFggfDzeFeAQ02CdshGAQ61CBzeE+BQm8BhkwCHugQO7wtwqEfg8IEAh/oEDh8KcGhA4LBZgEMjAoePBDg0JnDYIsChCYHDxwIcmhI4bBXg0IzA4RMBDs0JHD4V4NCCwOEzAQ6bs8LPY5sAh5aE+vC5AIdWBA5fCHBoTeDwpQCHtgQOXwlwaE/g8LUAh44EDtsFOHQmcPhGgENXAodvBThcSeDwnQCHHgQOOwQ49CRw2CnAoTeBw/cCHPoSOPwgwKE/gcOPAhwGEjj8JMBhEIHDLgEOgwkcfhbgcC2Bwy8CHErnDz+PXwU4DCXUh90CHIYROPwmwGEEgcPvAhxGEjj8IcBhFIHDHgEOowkc/hTgMIbAYa8Ah7EEDpHi//c5jCNwiApwWJ0Rfh75BDiMJ9SHDAEOEwkc8gtwmETgkCnAYTKBQwEBDlMIHLIEOEwlcCgowGEagUMhAQ7LCOPEDhDgMJ1QHw4U4DCTwKGwAIdZBA5FBDjMJnAoKsBhDoFDMQEOcwkcDhLg8CiBQ3EBDvMIHA4W4DCfwKGEAIcFBA4lBTgsJHAoJcDhaQKHQwQ4LCJwOFSAwxICh8MEOCwlcDhc4f0DgcMRAhxeIHA4UoDDcgKHowQ4vEzgcLQAhxUEDscIcFhJ4FBagMPrBA4xAQ6rCBzKCHBYQ+BwrACHtQQOxwlwWEfgcLwAh/UEDmUFOGwgcDhBgMNGAodyAhw2ETiUF+DwAYFDBQEOmwkcThTgsIXAoaIAh60EDicJcPiUwKGSAIdtBA4nC3D4gsChsgCHrwgcqghw2E7gUFWAw7cEDqcIcNhB4FBNgMP3BA6nCnD4kcChugCHXQQOpwlw+IXA4XQBDrsJHM4Q4PA7gUMNAQ57CBzOFOCwl8ChpgCHKGFNwrMEOGQQONQS4JBJ4HC2AIcsAofaAhwKETjUEeBwIIFDXQEORQgczhHgUIzAoZ4Ah+IEDucKcChB4FBfgEMpAofzBDgcSuDQQIDD4QQODQU4HEng0EiAw9EEDucLcChN4NBYgEMZAocLBDgcR+DQRIBDWQKHCwU4lCNwaCrAoQKBw0UCHCoSODQT4FCJwOFiAQ6VCRyaC3CoSuBwiQCHagQOLQQ4VCdwuFSAw+kEDpcJcKhB4NBSgENNAofLBTjUInBoJcChNoHDFQIc6hI4tBbgUI/AoY0Ah/oEDm0FODQgcGgnwKERgUN7AQ6NCRw6CHBoQuDQUYBDUwKHTgIcmhE4dBbg0JzAoYsAhxYEDl0FOFxG4NBNgMPlBA5XCnC4gsChuwCHNgQOPQQ4tCNwuEqAQwcCh54CHDoROPQS4NCFwKG3AIduBA59BDh0J3DoK8DhKgKHfgIcehE49Bfg0IfAYYAAh34EDgMFOAwgcLjawCHDS7W8NCP+73cPikQ2euk9L23y0vte+sBLH3pps5c+8tIWL33spa1e+sRLn3rpMy9t89LnXvrCS1966Ssvfe2l7V76xkvfeuk7L+3w0k4vfe+lH7z0o5d+8tIuL/3spV+89KuXdnvpNy9hfXqszY51ybEmN9ajxlrMWIcYa/Bi/VmsvYp1R7HmJtabxFqLWGcQa+xhfTmsrYZ1xbCmFtaTwlpKWEcIa+hg/RisnYJ1Q7BmBtaLwFoJWCcAGvnQh4c2OnTBoYn9lx60l6ADDA1c6L9C+xS6n9C8hN4jtA6h8weNO+i7QdsMul7QtIKeE7SMoOMDDRvot0C7BLod0KyAXgO0CjBPH3PUMT8bc5MxLxdzUjEfE3MRMQ8Pc9Aw/wpzjzDvBnNOMN8Ccw0wzh5jzDG+GmOLMa4WY0oxnhJjCTGODmPIMH4KY4cwbgZjRjBeAmMF8J0c34jxfRTfBvFdDN+E8D0E3wLwHhzvgPH+E+/+8N4L73zwvgPP+njOxTMenm8Q2yOuRUyHeAb3ctzH0Iej/0LbRb3N3vIZ63zNoh6bovvOr9L5wv5bq86osPii+s+MGNGyTflqXzYcsqTvhHpbd9250/t/nL/hIHs+Gw4KnscgY39Uy+d4LBLMruRfYoEui0TfOSj8/sjCweXvoyzPKepWZ7LPTVWW1xh8gP0Z8X32dbks3xx/23BdtGCB8PMYzKvn+zK1XRetSdDRGCLAoRaBw7UCHGoTOFwnwKEugcP1AhzqETgMFeBQn8DhBgEODQgchglwaETgMFyAQ2MChxECHJoQONwowKEpgcNIAQ7NCBxuEuDQnMBhlACHFgQONwtw2JwVfh6jBTi0JNSHWwQ4tCJwGCPAoTWBw60CHNoSOIwV4NCewOE2AQ4dCRzGCXDoTOBwuwCHrgQOdwhwuJLAYbwAhx4EDhMEOPQkcJgowKE3gcOdAhz6EjhMEuDQn8DhLgEOAwkcJgtwGETgcLcAh8EEDlMEOFxL4HCPAIfS+cPPY6oAh6GE+nCvAIdhBA7TBDiMIHC4T4DDSAKH+wU4jCJwmC7AYTSBwwwBDmMIHGYKcBhL4PCAAIdxBA6zBDiszgg/jwcFOIwn1IfZAhwmEjg8JMBhEoHDHAEOkwkcHhbgMIXAYa4Ah6kEDo8IcJhG4PCoAIdlhHFijwlwmE6oD/MEOMwkcHhcgMMsAof5AhxmEzg8IcBhDoHDAgEOcwkcnhTg8CiBw0IBDvMIHJ4S4DCfwOFpAQ4LCByeEeCwkMBhkQCHpwkcFgtwWETgsESAwxICh2cFOCwlcFiq8P6BwOE5AQ4vEDgsE+CwnMDheQEOLxM4vCDAYQWBw4sCHFYSOCwX4PA6gcNLAhxWETi8LMBhDYHDKwIc1hI4rBDgsI7A4VUBDusJHFYKcNhA4PCaAIeNBA6vC3DYRODwhgCHDwgcVino5BA4rBbgsIXAYY0Ah60EDm8KcPiUwGGtAIdtBA5vCXD4gsBhnQCHrwgc3hbgsJ3AYb0Ah28JHN4R4LCDwGGDAIfvCRzeFeDwI4HDRgEOuwgc3hPg8AuBwyYBDrsJHN4X4PA7gcMHAhz2EDh8KMBhL4HDZgEOUcL6fB8JcMggcNgiwCGTwOFjAQ5ZBA5bBTgUInD4RIDDgQQOnwpwKELg8JkAh2IEDtsEOBQncPhcgEMJAocvBDiUInD4UoDDoQQOXwlwOJzA4WsBDkcSOGwX4HA0gcM3CrqsBA7fCnAoQ+DwnQCH4wgcdghwKEvgsFOAQzkCh+8FOFQgcPhBgENFAocfBThUInD4SYBDZQKHXQIcqhI4/CzAoRqBwy8CHKoTOPwqwOF0AofdAhxqEDj8JsChJoHD7wIcahE4/CHAoTaBwx4BDnUJHP4U4FCPwGGvAIf6BA6Rg//vc2hA4BAV4NCIwCGfAIfGBA4ZAhyaEDjkF+DQlMAhU4BDMwKHAgIcmhM4ZAlwaEHgUFCAw2UEDoUEOFxO4HCAAIcrCBwOFODQhsChsACHdgQORQQ4dCBwKCrAoROBQzEBDl0IHA4S4NCNwKG4AIfuBA4HC3C4isChhACHXgQOJQU49CFwKCXAoR+BwyECHAYQOBx6sC2PfMa/X7NoJHJO0eDn14qfn+xHlc4X9t9adUaFxRfVf2bEiJZtylf7suGQJX0n1Nu6686d3v8fZvTDyulU70cNz64Mo12nGs6tUTT4uYcH9zf6z49I8Guqx/OI2K6L5PfSAV7K9PujRhuqRez13yWfUyKcfKpGwm9rZxnb2tlF9x2IReyblcEdxWz9bvZ2RLwuHnnwvjzNmRsazV9/OyO+PyJ+HSp30STDXAqprrGQ6hoLae/evb/6HY9FUueHH4n+HRUHf/TBkZxQjoqXROKxoxMAWwsnG4y1599SJtyev5ajXR8b7cre8gfPZ6KXT/Sog4PbdLThrmHgGg3qa3bFtLJEwz3K4W6EzdpAo4UjkZ+LBD+/gHf+90XsPh1zcPh+/GLwI8vRj9IEP341+FHQ0Y8YwY/dBj8KOfpRhuDHbwY/DnD041iCH78b/DjQ0Y/jCH78YfCjsKMfxxP82GPwo4ijH2VDflKEH3862HUCwa69DnaVI9gVcYivyhPsijrYVYFgVz4Hu04k2JXhYFdFgl35Hew6iWBXpoNdlQh2FXCw62SCXVkOdlUm2FXQwa4qBLsKOdhVlWDXAQ52nUKw60AHu6oR7CrsYNepBLuKONhVnWBXUQe7TiPYVczBrtMJdh3kYNcZBLuKO9hVg2DXwQ52nUmwq4SDXTUJdpV0sOssgl2lHOyqRbDrEAe7zibYdaiDXbUJdh3mYFcdgl2HO9hVl2DXEQ52nUOw60gHu+oR7DrKwa5zCXYd7WBXfYJdxzjYdR7BrtIOdjUg2BVzsKshwa4yDnY1Ith1rINd5xPsOs7BrsYEu453sOsCgl1lHexqQrDrBAe7LiTYVc7BrqYEu8o72HURwa4KDnY1I9h1ooNdFxPsquhgV3OCXSc52HUJwa5KDna1INh1soNdlxLsquxg12UEu6o42NWSYFdVB7suJ9h1ioNdrQh2VXOw6wqCXac62NWaYFd1B7vaGOzCuNCzvVQn/m+MeftrvNjBf49TwhgfjI/B2BKMy8AYCIw3wLd9fEfHN2t8H8a3WHz3xDdGfM/DtzN8p8I3IXx/wbcOfFfAO3y8L8e7abwHxjtXvN/Eu0S8t8M7MryPwrsfvGfBOw28P8CzOp6L8QyK5z08W+E5Bs8MiM8RCyPuRIyHeAqxC+IE3JNx/8O9Bv06+lD0V+gb0A5R51G/UJZtDvbnY2HfNjj7gobxmwWtY1WtdQ3jN2G7ta61C+7vX+ONzvY5HovYNqtvFhtd82hvbHO1I/9rc8ltzjweLZJzlk2QMcooJ2s+7Q15dDC2h9o+x2ORYHYl/xILdBmnPXRwyAObtb/tmP7+NvrPj4itv+3o0N924tWvfcbarot2ItSvzgIcChYIP48uAhxqEla97SrAoRaBQzcBDrUJHK4U4FCXwKG7AId6BA49BDjUJ3C4SoBDAwKHngIcGhE49BLg0JjAobcAhyYEDn0EODQlcOgrwKEZgUM/AQ7NCRz6C3BoQeAwQIDD5qzw8xgowKEloT5cLcChFYHDIAEOrQkcrhHg0JbAYbAAh/YEDkMEOHQkcLhWgENnAofrBDh0JXC4XoDDlQQOQwU49CBwuEGAQ08Ch2ECHHoTOAwX4NCXwGGEAIf+BA43CnAYSOAwUoDDIAKHmwQ4DCZwGCXA4VoCh5sFOJTOH34eowU4DCXUh1sEOAwjcBgjwGEEgcOtAhxGEjiMFeAwisDhNgEOowkcxglwGEPgcLsAh7EEDncIcBhH4DBegMPqjPDzmCDAYTyhPkwU4DCRwOFOAQ6TCBwmCXCYTOBwlwCHKQQOkwU4TCVwuFuAwzQChykCHJYRxondI8BhOqE+TBXgMJPA4V4BDrMIHKYJcJhN4HCfAIc5BA73C3CYS+AwXYDDowQOMwQ4zCNwmCnAYT6BwwMCHBYQOMwS4LCQwOFBAwdoitSJJ2zQTIBeAObKY5445khjfjDmxmJeKOZEYj4g5sJhHhjmQGH+D+a+YN4H5jxgvD/GumOcN8Y4Y3wvxrZiXCfGNGI8H8ayYRwXxjBh/A7GrmDcBsYs4Hs9vlXjOy2+UeL7HL5N4bsMvkngfTzeReM9LN5B4v0b3j3hvQveOeB5G8+aeM7CMwbia8SWiKsQU+B+insJ+lH0IWg/qDvglr1ZdXCw2rNVbwc6HdZ8OhvymG1sD3V8jsciwexK/iUW6DKOHspshzywWfV2HgqeT1h6O39VJysf1EXYnnxdKn/n8OrXPmNt10XnEOrXwwIcGHo7cwU4MPR2HhHgwNDbeVSAA0Nv5zEBDgy9nXkCHBh6O48LcGDo7cwX4MDQ23lCgANDb2eBAAeG3s6TAhwYejsLBTgw9HaeEuDA0Nt5WoADQ2/nGQEODL2dRQIcGHo7iwU4MPR2lghwYOjtPCvAgaG3s1SAA0Nv5zkBDgy9nWUCHBh6O88LcGDo7bwgwIGht/OiAAeG3s5yAQ4MvZ2XBDgw9HZeFuDA0Nt5RYADQ29nhQAHht7OqwIcGHo7KwU4MPR2XhPgwNDbeV2AA0Nv5w0BDgy9nVUCHBh6O6sFODD0dtYIcGDo7bwpwIGht7NWgANDb+ctAQ4MvZ11AhwYejtvC3Bg6O2sF+DA0Nt5R4ADQ29ngwAHht7OuwIcGHo7GwU4MPR23hPgwNDb2STAgaG3874AB4bezgcCHBh6Ox8KcGDo7WwW4MDQ2/lIgANDb2eLAAeG3s7HAhwYejtbFebzEjh8IsCBobfzqQAHht7OZwIcGHo72wQ4MPR2PhfgwNDb+UKAA0Nv50sDB2iK1I3sYwHNBOgFYK485oljjjTmB2NuLOaFYk4k5gNiLhzmgWEOFOb/YO4L5n1gzgPG+2OsO8Z5Y4wzxvdibCvGdWJMI8bzYSwbxnFhDBPG72DsCsZtYMwCvtfjWzW+0+IbJb7P4dsUvsvgmwTex+NdNN7D4h0k3r/h3RPeu+CdA5638ayJ5yw8YyC+RmyJuAoxBe6nuJegH0UfgvaDugNu2Vs+I/NTIna9Heh0WPN52JDHV8b2UNfneCwSzK7kX2KBLuPooXzlkAc2q97O18HzCUtv5y+TrXxQF2F78nWp/N3Oq1/7jLVdF91OqF/fCHBg6O18K8CBobfznQAHht7ODgEODL2dnQIcGHo73wtwYOjt/CDAgaG386MAB4bezk8CHBh6O7sEODD0dn4W4MDQ2/lFgANDb+dXAQ4MvZ3dAhwYeju/CXBg6O38LsCBobfzhwAHht7OHgEODL2dPwU4MPR29gpwYOjtREr83+fA0NuJCnBg6O3kE+DA0NvJEODA0NvJL8CBobeTKcCBobdTQIADQ28nS4ADQ2+noAAHht5OIQEODL2dAwQ4MPR2DhTgwNDbKSzAgaG3U0SAA0Nvp6gAB4beTjEBDgy9nYMEODD0dooLcGDo7RwswIGht1NCgANDb6ekAAeG3k4pAQ4MvZ1DBDgw9HYOFeDA0Ns5TIADQ2/ncAEODL2dIwQ4MPR2jhTgwNDbOUqAA0Nv52gBDgy9nWMEODD0dkoLcGDo7cQEODD0dsoIcGDo7RwrwIGht3OcAAeG3s7xAhwYejtlBTgw9HZOEODA0NspJ8CBobdTXoADQ2+nggAHht7OiQIcGHo7FQU4MPR2TjJwgEDHOZF9ejvQTIBeAObKY5445khjfjDmxmJeKOZEYj4g5sJhHhjmQGH+D+a+YN4H5jxgvD/GumOcN8Y4Y3wvxrZiXCfGNGI8H8ayYRwXxjBh/A7GrmDcBsYs4Hs9vlXjOy2+UeL7HL5N4bsMvkngfTzeReM9LN5B4v0b3j3hvQveOeB5+69nTS/hGQPxNWJLxFWIKXA/xb0E/Sj6ELQf1B1wy96sOjh3FLPr7XzjoLfzjSGPSsb2cI7P8VgkmF3Jv8QCXcbRQ7FwSNysejsnB88nLL2d/Phh5YO6CNuTr0vlb2Ve/dpnrO26aOUS4edRRYADQ2+nqgAHht7OKQIcGHo71QQ4MPR2ThXgwNDbqS7AgaG3c5oAB4bezukCHBh6O2cIcGDo7dQQ4MDQ2zlTgANDb6emAAeG3s5ZAhwYeju1BDgw9HbOFuDA0NupLcCBobdTR4ADQ2+nrgAHht7OOQIcGHo79QQ4MPR2zhXgwNDbqS/AgaG3c54AB4beTgMBDgy9nYYCHBh6O40EODD0ds4X4MDQ22kswIGht3OBAAeG3k4TAQ4MvZ0LBTgw9HaaCnBg6O1cJMCBobfTTIADQ2/nYgEODL2d5gIcGHo7lwhwYOjttBDgwNDbuVSAA0Nv5zIBDgy9nZYCHBh6O5cLcGDo7bQS4MDQ27lCgANDb6e1AAeG3k4bAQ4MvZ22AhwYejvtBDgw9HbaC3Bg6O10EODA0NvpKMCBobfTSYADQ2+nswAHht5OFwEODL2drgIcGHo73QQ4MPR2rhTgwNDb6S7AgaG300OAA0Nv5yoBDgy9nZ4CHBh6O70EODD0dnoLcGDo7fQR4MDQ2+lr1NupF9mntwPNBOgFYK485oljjjTmB2NuLOaFYk4k5gNiLhzmgWEOFOb/YO4L5n1gzgPG+2OsO8Z5Y4wzxvdibCvGdWJMI8bzYSwbxnFhDBPG72DsCsZtYMwCvtfjWzW+0+IbJb7P4dsUvsvgmwTex+NdNN7D4h0k3r/h3RPeu+CdA5638ayJ5yw8YyC+RmyJuAoxBe6nuJegH0UfgvaDugNu2Vs+I/OqEbveDnQ6rPkkanukyqOfsT3U8zkeiwSzK/mXWKDLOHoo/RzywGbV2+kfPJ+w9HYy8cPKB3URtidfl8rfAbz6tc9Y23XRAYT6NVCAA0Nv52oBDgy9nUECHBh6O9cIcGDo7QwW4MDQ2xkiwIGht3OtAAeG3s51AhwYejvXC3Bg6O0MFeDA0Nu5QYADQ29nmAAHht7OcAEODL2dEQIcGHo7NwpwYOjtjBTgwNDbuUmAA0NvZ5QAB4bezs0CHBh6O6MFODD0dm4R4MDQ2xkjwIGht3OrAAeG3s5YAQ4MvZ3bBDgw9HbGCXBg6O3cLsCBobdzhwAHht7OeAEODL2dCQIcGHo7EwU4MPR27hTgwNDbmSTAgaG3c5cAB4bezmQBDgy9nbsFODD0dqYIcGDo7dwjwIGhtzNVgANDb+deAQ4MvZ1pAhwYejv3CXBg6O3cL8CBobczXYADQ29nhgAHht7OTAEODL2dBwQ4MPR2ZglwYOjtPCjAgaG3M1uAA0Nv5yEBDgy9nTkCHBh6Ow8LcGDo7cwV4MDQ23lEgANDb+dRAQ4MvZ3HBDgw9HbmCXBg6O08LsCBobczX4ADQ2/nCQEODL2dBQIcGHo7TwpwYOjtLBTgwNDbecrAwXtNGDk3sk9vB5oJ0AvAXHnME8ccacwPxtxYzAvFnEjMB8RcOMwDwxwozP/B3BfM+8CcB4z3x1h3jPPGGGeM78XYVozrxJhGjOfDWDaM48IYJozfwdgVjNvAmAV8r8e3anynxTdKfJ/Dtyl8l8E3CbyPx7tovIfFO0i8f8O7J7x3wTsHPG/jWRPPWXjGQHyN2BJxFWIK3E9xL0E/ij4E7Qd1B9yyN6sODjRLjjTq7UCnw5pPorZHqjyeNraHc32OxyLB7Er+JRboMo4eytMOeWDLSMonFe9ngucTlt5OAfyw8kFdhO3J16XydxGvfu0z1nZddBGhfi025mFt8zWLRiJnFQ1+fi3v3LOL2stziUB5MnSDnhXgwNANWirAgaEb9JwAB4Zu0DIBDgzdoOcFODB0g14Q4MDQDXpRgANDN2i5AAeGbtBLAhwYukEvC3Bg6Aa9IsCBoRu0QoADQzfoVQEODN2glQIcGLpBrwlwYOgGvS7AgaEb9IYAB4Zu0CoBDgzdoNUCHBi6QWsEODB0g94U4MDQDVorwIGhG/SWAAeGbtA6AQ4M3aC3BTgwdIPWC3Bg6Aa9I8CBoRu0QYADQzfoXQEODN2gjQIcGLpB7wlwYOgGbRLgwNANel+AA0M36AMBDgzdoA8FODB0gzYLcGDoBn0kwIGhG7RFgANDN+hjAQ4M3aCtAhwYukGfCHBg6AZ9KsCBoRv0mQAHhm7QNgEODN2gzwU4MHSDvhDgwNAN+lKAA0M36CsBDgzdoK8FODB0g7YLcGDoBn0jwIGhG/StAAeGbtB3AhwYukE7BDgwdIN2CnBg6AZ9L8CBoRv0gwAHhm7QjwIcGLpBPwlwYOgG7RLgwNAN+lmAA0M36BcBDgzdoF8FODB0g3YbOEAbpX5kn24QNBOgF4C58pgnjjnSmB+MubGYF4o5kZgPiLlwmAeGOVCY/4O5L5j3gTkPGO+Pse4Y540xzhjfi7GtGNeJMY0Yz4exbBjHhTFMGL+DsSsYt4ExC/hej2/V+E6Lb5T4PodvU/gug28SeB+Pd9F4D4t3kHj/hndPeO+Cdw543sazJp6z8IyB+BqxJeIqxBS4n+Jegn4UfQjaD+oOuGVvydoeQXSADPohf2m1QKcjOZ9U1yXmkcqm30rY2kN9n+OxSDC7kn+JBbqMo+vym0Me2Ky6Qb8Hzycs3aAs/LDyQV2E7cnXpfL3D1792mes7broH4T6tUeAA0Nv508BDgy9nb0CHBh6O5GS//c5MPR2ogIcGHo7+QQ4MPR2MgQ4MPR28gtwYOjtZApwYOjtFBDgwNDbyRLgwNDbKSjAgaG3U0iAA0Nv5wABDgy9nQMFODD0dgoLcGDo7RQR4MDQ2ykqwIGht1NMgANDb+cgAQ4MvZ3iAhwYejsHC3Bg6O2UEODA0NspKcCBobdTSoADQ2/nEAEODL2dQwU4MPR2DhPgwNDbOVyAA0Nv5wgBDgy9nSMFODD0do4S4MDQ2zlagANDb+cYAQ4MvZ3SAhwYejsxAQ4MvZ0yAhwYejvHCnBg6O0cJ8CBobdzvAAHht5OWQEODL2dEwQ4MPR2yglwYOjtlBfgwNDbqSDAgaG3c6IAB4beTkUBDgy9nZMEODD0dioJcGDo7ZwswIGht1NZgANDb6eKAAeG3k5VAQ4MvZ1TBDgw9HaqCXBg6O2cKsCBobdTXYADQ2/nNAEODL2d0wU4MPR2zhDgwNDbqSHAgaG3c6YAB4beTk0BDgy9nbMEODD0dmoZOEBT5LzIPr0daCZALwBz5TFPHHOkMT8Yc2MxLxRzIjEfEHPhMA8Mc6Aw/wdzXzDvA3MeMN4fY90xzhtjnDG+F2NbMa4TYxoxng9j2TCOC2OYMH4HY1cwbgNjFv76Xu8lfKfFN0p8n8O3KXyXwTcJvI/Hu2i8h8U7SLx/w7snvHfBOwc8b+NZE89ZeMZAfI3YEnEVYgrcT3EvQT+KPgTtB3UH3LI3qw4ONEuOOHjf+UH0efY46O3sMejtnG1sD+f5HI9FgtmV/Ess0GUcPRQLh8TNqrdTO3g+UYPeTtSgtxP950fEVndhe/J1qfytY+CKv50R3/td56JvFfTcuiVt/LI3a/mfk/7y//uCSE67U52e3Xe59HnZ56ZiU8+xriReZ7WvZlGvXhc13Dfj51vbwbnG/sXFjzpGP+o4+FGfd7/YZ6ztOopu1HkCHBi6UQ0EODB0oxoKcGDoRjUS4MDQjTpfgANDN6qxAAeGbtQFAhwYulFNBDgwdKMuFODA0I1qKsCBoRt1kQAHhm5UMwEODN2oiwU4MHSjmgtwYOhGXSLAgaEb1UKAA0M36lIBDgzdqMsEODB0o1oKcGDoRl0uwIGhG9VKgANDN+oKAQ4M3ajWAhwYulFtBDgwdKPaCnBg6Ea1E+DA0I1qL8CBoRvVQYADQzeqowAHhm5UJwEODN2ozgIcGLpRXQQ4MHSjugpwYOhGdRPgwNCNulKAA0M3qrsAB4ZuVA8BDgzdqKsEODB0o3oKcGDoRvUS4MDQjeotwIGhG9VHgANDN6qvAAeGblQ/AQ4M3aj+AhwYulEDBDgwdKMGCnBg6EZdLcCBoRs1SIADQzfqGgEODN2owQIcGLpRQwQ4MHSjrhXgwNCNuk6AA0M36noBDgzdqKECHBi6UTcIcGDoRg0T4MDQjRouwIGhGzVCgANDN+pGAQ4M3aiRAhwYulE3CXBg6EaNMupYWP8+9ELqOOjMZB0brl3Qh4F2i1WD5maD3ovVh2RbUv19aIRcUzz4+dAIOexge1mMNtSR/F4qEtmXRw4DkvJNZW+N4OfmyO+WkrnI8JaSDh+WSgaH6WrXmJL7DsQiwTeXBlvPocEeGHKDXVLib1Enq12FjXZlb1YhqFsNHYOBVdRgf/SfHwa7z4z8Xbesnc+ZhjzGhnyTAfuxDnXjNkeBqtvyQMxsrKHPGEcSM7s9/XX4r81FlMwgyPXXzf9ch/pyR8nw/ahv9KO+gx/jQ26PsOtmh+Bqwv+h4AplMdpYFqMdymKiMbgqFN//y4CkfFPZawmucpPP6RFOPrfnsk6nKqezIn/3p9Z6lGE496yInVU0+ZdYoMsi0bEhA6sZ+fsmZwVmuTHeaWw83gPQP/b8l2+pbAzaaPfu3fux3/FYJHUe+JFo66T4A8BdJSM5o5FJ8V4n8dhdPgYmRwOpDJgYrCAmegURnWQotLuM8KwVDxVokuPTkssj+GDjI/h5DjKdkwlyo0OMfjRw8ONugh/XGv1o6ODHFIIf1xn9aOTgxz0EP643+nG+gx9TCX4MNfrR2MGPewl+3GD04wIHP6YR/Bhm9KOJgx/3EfwYbvTjQgc/7if4McLoR1MHP6YT/LjR6MdFDn7MIPgx0uhHMwc/ZhL8uMnox8UOfjxA8GOU0Y/mDn7MIvhxs9GPSxz8eJDgx2ijHy0c/JhN8OMWox+XOvjxEMGPMUY/LnPwYw7Bj1uNfrR08ONhgh9jjX5c7uDHXIIftxn9aOXgxyMEP8YZ/bjCwY9HCX7cbvSjtYMfjxH8uMPoRxsHP+YR/Bhv9KOtgx+PE/yYYPSjnYMf8wl+TDT60d7BjycIftxp9KODgx8LCH5MMvrR0cGPJwl+3GX0o5ODHwsJfkw2+tHZwY+nCH7cbfSji4MfTxP8mGL0o6uDH88Q/LjH6Ec3Bz8WEfyYavTjSgc/FhP8uNfoR3cHP5YQ/Jhm9KOHgx/PEvy4z+jHVQ5+LCX4cb/Rj54OfjxH8GO60Y9eDn4sI/gxw+hHbwc/nif4MdPoRx8HP14g+PGA0Y++Dn68SPBjltGPfg5+LCf48aDRj/4OfrxE8GO20Y8BDn68TPDjIaMfAx38eIXgxxyjH1c7+LGC4MfDRj8GOfjxKsGPuUY/rnHwYyXBj0eMfgx28OM1gh+PGv0Y4uDH6wQ/HjP6ca2DH28Q/Jhn9OM6Bz9WEfx43OjH9Q5+rCb4Md/ox1AHP9YQ/HjC6McNDn68SfBjgdGPYQ5+rCX48aTRj+EOfrxF8GOh0Y8RDn6sI/jxlNGPGx38eJvgx9NGP0Y6+LGe4MczRj9ucvDjHYIfi4x+jHLwYwPBj8VGP2528ONdgh9LjH6MdvBjI8GPZ41+3OLgx3sEP5Ya/Rjj4Mcmgh/PGf241cGP9wl+LDP6MdbBjw8Ifjxv9OM2Bz8+JPjxgtGPcQ5+bCb48aLRj9sd/PiI4Mdyox93OPixheDHS0Y/xjv48THBj5eNfkxw8GMrwY9XjH5MdPDjE4IfK4x+3Ongx6cEP141+jHJwY/PCH6sNPpxl4Mf2wh+vGb0Y7KDH58T/Hjd6MfdDn58QfDjDaMfUxz8+JLgxyqjH/c4+PEVwY/VRj+mOvjxNcGPNUY/7nXwYzvBjzeNfkxz8OMbgh9rjX7c5+DHtwQ/3jL6cb+DH98R/Fhn9GO6gx87CH68bfRjhoMfOwl+rDf6MdPBj+8Jfrxj9OMBBz9+IPixwejHLAc/fiT48a7Rjwcd/PiJ4MdGox+zHfzYRfDjPaMfDzn48TPBj01GP+Y4+PELwY/3jX487ODHrwQ/PjD6MdfBj90EPz40+vGIgx+/EfzYbPTjUQc/fif48ZHRj8cc/PiD4McWox/zHPzYQ/DjY6Mfjzv48SfBj61GP+Y7+LGX4McnRj+ecPAjUip8Pz41+rHAwY8owY/PjH486eBHPoIf24x+LHTwI4Pgx+dGP55y8CM/wY8vjH487eBHJsGPL41+POPgRwGCH18Z/Vjk4EcWwY+vjX4sdvCjIMGP7UY/ljj4UYjgxzdGP5518OMAgh/fGv1Y6uDHgQQ/vjP68ZyDH4UJfuww+rHMwY8iBD92Gv143sGPogQ/vjf68YKDH8UIfvxg9ONFBz8OIvjxo9GP5Q5+FCf48ZPRj5cc/DiY4Mcuox8vO/hRguDHz0Y/XnHwoyTBj1+Mfqxw8KMUwY9fjX686uDHIQQ/dhv9WOngx6EEP34z+vGagx+HEfz43ejH6w5+HE7w4w+jH284+HEEwY89Rj9WOfhxJMGPP41+rHbw4yiCH3uNfqxx8ONogh+Rg21+vOngxzEEP6JGP9Y6+FGa4Ec+ox9vOfgRI/iRYfRjnYMfZQh+5Df68baDH8cS/Mg0+rHewY/jCH4UMPrxjoMfxxP8yDL6scHBj7IEPwoa/XjXwY8TCH4UMvqx0cGPcgQ/DjD68Z6DH+UJfhxo9GOTgx8VCH4UNvrxvoMfJxL8KGL04wMHPyoS/Chq9ONDBz9OIvhRzOjHZgc/KhH8OMjox0cOfpxM8KO40Y8tDn5UJvhxsNGPjx38qELwo4TRj60OflQl+FHS6McnDn6cQvCjlNGPTx38qEbw4xCjH585+HEqwY9DjX5sc/CjusEPrA/fwEsz4v/GmuNYrxtrXWOdaKyxjPWJsbYv1sXFmrJYj3VGyb/XAcUamlh/Ems3Yt1DrBmI9fawVh3WecMaaVhfDGtzYV0rrAmF9ZSwFhHW8cEaOFg/BmuvYN0SrPmB9TKw1gTWacAaB1gfANr60KWHpjv00KElDh1uaFhD/xnaydAdhmYv9G6hFQudVWiUQt8T2pjQlYQmI/QMoQUIHT1o0EG/Ddpn0A2D5hb0qqD1BJ0kaAxBnwfaNtCFgaYK9Eig5QEdDGhIQH8B2gWY948585hvjrnamOeMOcKYX4u5qZjXiTmRmE+IuXiYx4Y5YJg/hblHmLeDOS+YL4K5FpingDH+GB+PseUYl40xzRgPjLG0GIeKMZwY/4ixgxh3hzFrGO+FsVIYZ4QxOhjfgrEhGFeBMQn4no9v4fiOjG+w+H6Jb3/4boZvTvheg28d+E6Ad+x4P413u3gvineKf72PK/X3eyC8Q8H7Bzy747kXz4x43sKzCuJ8xMiILxGbIa5BTID7Ke5F6MfRB6L/QNtDvf2n8ifV+RRb5liPycSS9rZymqGt5Iu3leQtFrFtRt+iFhtd8zg95L4P9txZMni51PTSWIfyPMPY9zWM/K/v+1/f93+r78tnrPNoJ4b2G8X5aCfWNpyYRyqbapSy9asNfY7HIsHsSv4lFugyTr9aw5iH633PWpZjDX3xmbyy3Geg7bromYSyrCnAoWCB8PM4S4BDzYLh51FLgEMtAoezBTjUJnCoLcChLoFDHQEO9Qgc6gpwqE/gcI4AhwYEDvUEODQicDhXgENjAof6AhyaEDicJ8ChKYFDAwEOzQgcGgpwaE7g0EiAQwsCh/MFOGzOItyTBDi0JNSHCwQ4tCJwaCLAoTWBw4UCHNoSODQV4NCewOEiAQ4dCRyaCXDoTOBwsQCHrgQOzQU4XEngcIkAhx4EDi0EOPQkcLhUgENvAofLBDj0JXBoKcChP4HD5QIcBhI4tBLgMIjA4QoBDoMJHFoLcLiWwKGNAIfS+QnP9gIchhLqQzsBDsMIHNoLcBhB4NBBgMNIAoeOAhxGETh0EuAwmsChswCHMQQOXQQ4jCVw6CrAYRyBQzcBDqszws/jSgEO4wn1obsAh4kEDj0EOEwicLhKgMNkAoeeAhymEDj0EuAwlcChtwCHaQQOfQQ4LCOME+srwGE6oT70E+Awk8ChvwCHWQQOAwQ4zCZwGCjAYQ6Bw9UCHOYSOAwS4PAogcM1AhzmETgMFuAwn8BhiACHBQQO1wpwWEjgcJ0Ah6cJHK4X4LCIwGGoAIclBA43CHBYSuAwTOH9A4HDcAEOLxA4jBDgsJzA4UYBDi8TOIwU4LCCwOEmAQ4rCRxGCXB4ncDhZgEOqwgcRgtwWEPgcIsAh7UEDmMEOKwjcLhVgMN6AoexAhw2EDjcJsBhI4HDOAEOmwgcbhfg8AGBwx0KOjkEDuMFOGwhcJggwGErgcNEAQ6fEjjcKcBhG4HDJAEOXxA43CXA4SsCh8kCHLYTONwtwOFbAocpAhx2EDjcI8DhewKHqQIcfiRwuFeAwy4Ch2kCHH4hcLhPgMNuAof7BTj8TuAwXYDDHgKHGQIc9hI4zBTgEC0Ufh4PCHDIIHCYJcAhk8DhQQEOWQQOswU4FCJweEiAw4EEDnMEOBQhcHhYgEMxAoe5AhyKEzg8IsChBIHDowIcShE4PCbA4VACh3kCHA4ncHhcgMORBA7zBTgcTeDwhIIuK4HDAgEOZQgcnhTgcByBw0IBDmUJHJ4S4FCOwOFpAQ4VCByeEeBQkcBhkQCHSgQOiwU4VCZwWCLAoSqBw7MCHKoROCwV4FCdwOE5AQ6nEzgsE+BQg8DheQEONQkcXhDgUIvA4UUBDrUJHJYLcKhL4PCSAId6BA4vC3CoT+DwigCHBgQOKwQ4NCJweFWAQ2MCh5UCHJoQOLwmwKEpgcPrAhyaETi8IcChOYHDKgEOLQgcVgtwuIzAYY0Ah8sJHN4U4HAFgcNaAQ5tCBzeEuDQjsBhnQCHDgQObwtw6ETgsF6AQxcCh3cEOHQjcNggwKE7gcO7AhyuInDYKMChF4HDewIc+hA4bBLg0I/A4X0BDgMIHD4wcMjwUiMvzYj/+yzv2lpeOttLtb1Ux0t1vXSOl+p56Vwv1ffSeV5q4KWGXmrkpfO91NhLF3ipiZcu9FJTL13kpWZeuthLzb10iZdaeOlSL13mpZZeutxLrbx0hZdae6mNl9p6qZ2X2nsJ69NjbXasS441ubEeNdZixjrEWIMX689i7VWsO4o1N7HeJNZaxDqDWGMP68thbTWsK4Y1tbCeFNZSwjpCWEMH68dg7RSsG4I1M7BeBNZKwDoB0MiHPjy00aELDk1s6EFDCxk6wNDAhf4rtE+h+wnNS+g9QusQOn/QuIO+G7TNoOsFTSvoOUHLCDo+0LCBfgu0S6DbAc0K6DVAqwDz9DFHHfOzMTcZ83IxJxXzMTEXEfPwMAcN868w9wjzbjDnBPMtMNcA4+wxxhzjqzG2GONqMaYU4ykxlhDj6DCGDOOnMHYI42YwZgTjJTBWAN/J8Y0Y30fxbRDfxfBNCN9D8C0A78HxDhjvP/HuD++98M4H7zvwrI/nXDzj4fkGsT3iWsR0iGdwL8d9DH04+i+0XdTb7C2fsc7X8H6MLbnv/CqdL+y/teqMCosvqv/MiBEt25Sv9mXDIUv6Tqi3ddedO+Pn1ixlzwfXBM3jw1K2/qiRz/FYJJhdyb/EAl0WiZ5ZKvz+6ENjHsa/n4mynFjSXJb5LPVlM68s/9msnDcTyvKjXJZlKs64H50V3ydelyqbDMO5Zxns2SJQ7gULhJ/HxwIcahYMP4+tAhxqETh8IsChNoHDpwIc6hI4fCbAoR6BwzYBDvUJHD4X4NCAwOELAQ6NCBy+FODQmMDhKwEOTQgcvhbg0JTAYbsAh2YEDt8IcGhO4PCtAIcWBA7fKbxvyQo/jx0CHFoS6sNOAQ6tCBy+F+DQmsDhBwEObQkcfhTg0J7A4ScBDh0JHHYJcOhM4PCzAIeuBA6/CHC4ksDhVwEOPQgcdgtw6Eng8JsAh94EDr8LcOhL4PCHAIf+BA57BDgMJHD4U4DDIAKHvQIcBhM4RA75v8/hWgKHqACH0vnDzyOfAIehhPqQIcBhGIFDfgEOIwgcMgU4jCRwKCDAYRSBQ5YAh9EEDgUFOIwhcCgkwGEsgcMBAhzGETgcKMBhdUb4eRQW4DCeUB+KCHCYSOBQVIDDJAKHYgIcJhM4HCTAYQqBQ3EBDlMJHA4W4DCNwKGEAIdlhHFiJQU4TCfUh1ICHGYSOBwiwGEWgcOhAhxmEzgcJsBhDoHD4QIc5hI4HCHA4VEChyMFOMwjcDhKgMN8AoejBTgsIHA4RoDDQgKH0gIcniZwiAlwWETgUEaAwxICh2MFOCwlcDhO4f0DgcPxAhxeIHAoK8BhOYHDCQIcXiZwKCfAYQWBQ3kBDisJHCoIcHidwOFEAQ6rCBwqCnBYQ+BwkgCHtQQOlQQ4rCNwOFmAw3oCh8oCHDYQOFQR4LCRwKGqAIdNBA6nCHD4gMChmgCHzQQOpwpw2ELgUF2Aw1YCh9MEOHxK4HC6AIdtBA5nCHD4gsChhgCHrwgczhTgsJ3AoaYAh28JHM4S4LCDwKGWAIfvCRzOFuDwI4FDbQEOuwgc6ghw+IXAoa4Ah90EDucIcPidwKGeAIc9BA7nCnDYS+BQX4BDtFD4eZwnwCGDwKGBAIdMAoeGAhyyCBwaCXAoROBwvgCHAwkcGgtwKELgcIEAh2IEDk0EOBQncLhQgEMJAoemAhxKEThcJMDhUAKHZgIcDidwuFiAw5EEDs0FOBxN4HCJgi4rgUMLAQ5lCBwuFeBwHIHDZQIcyhI4tBTgUI7A4XIBDhUIHFoJcKhI4HCFAIdKBA6tBThUJnBoI8ChKoFDWwEO1Qgc2glwqE7g0F6Aw+kEDh0EONQgcOgowKEmgUMnAQ61CBw6C3CoTeDQRYBDXQKHrgIc6hE4dBPgUJ/A4UoBDg0IHLoLcGhE4NBDgENjAoerBDg0IXDoKcChKYFDLwEOzQgcegtwaE7g0EeAQwsCh74CHC4jcOgnwOFyAof+AhyuIHAYIMChDYHDQAEO7Qgcrhbg0IHAYZAAh04EDtcIcOhC4DBYgEM3AochAhy6EzhcK8DhKgKH6wQ49CJwuF6AQx8Ch6ECHPoRONwgwGEAgcMwA4cML53vpRnxf39cKhLZ6qVPvPSplz7z0jYvfe6lL7z0pZe+8tLXXtrupW+89K2XvvPSDi/t9NL3XvrBSz966Scv7fLSz176xUu/emm3l37z0u9e+sNLe7z0p5f2eini2R71Uj4vZXgpv5ewPj3WZse65FiTG+tRYy1mrEOMNXix/izWXsW6o1hzE+tNYq1FrDOINfawvhzWVsO6YlhTC+tJYS0lrCOENXSwfgzWTvlr3RAvYb0IrJWAdQKgkQ99eGijQxccmtjQg4YWMnSAoYEL/Vdon0L3E5qX0HuE1iF0/qBxB303aJtB1wuaVtBzgpYRdHygYQP9FmiXQLcDmhXQa4BWAebpY4465mdjbjLm5WJOKuZjYi4i5uFhDhrmX2HuEebdYM4J5ltgrgHG2WOMOcZXY2wxxtViTCnGU2IsIcbRYQwZxk9h7BDGzWDMCMZLYKwAvpPjGzG+j+LbIL6L4ZsQvofgWwDeg+MdMN5/4t0f3nvhnQ/ed+BZH8+5eMbD8w1ie8S1iOkQz+BejvsY+nD0X2i7qLfZW76kOl+l84X9t1adUWHxRfWfGTGiZZvy1b5sOGRJ3wn1tu66c6f3/2NLRiIflQreRnD+llL/zifVdYl5pLJp+CG2/uh8n+OxSDC7kn+JBbosEt1cKvz+yMLB4e9noiwnljSXZQauyz43VVmO4JXlP5uV84hDws/jRgEOBQuEn8dIAQ41CdohNwlwqEXgMEqAQ20Ch5sFONQlcBgtwKEegcMtAhzqEziMEeDQgMDhVgEOjQgcxgpwaEzgcJsAhyYEDuMEODQlcLhdgEMzAoc7BDg0J3AYL8ChBYHDBAEOm7PCz2OiAIeWhPpwpwCHVgQOkwQ4tCZwuEuAQ1sCh8kCHNoTONwtwKEjgcMUAQ6dCRzuEeDQlcBhqgCHKwkc7hXg0IPAYZoAh54EDvcJcOhN4HC/AIe+BA7TBTj0J3CYIcBhIIHDTAEOgwgcHhDgMJjAYZYAh2sJHB4U4FA6f/h5zBbgMJRQHx4S4DCMwGGOwng5AoeHBTiMJHCYK8BhFIHDIwIcRhM4PCrAYQyBw2MCHMYSOMwT4DCOwOFxAQ6rM8LPY74Ah/GE+vCEAIeJBA4LBDhMInB4UoDDZAKHhQIcphA4PCXAYSqBw9MCHKYRODwjwGEZYZzYIgEO0wn1YbEAh5kEDksEOMwicHhWgMNsAoelAhzmEDg8J8BhLoHDMgEOjxI4PC/AYR6BwwsCHOYTOLwowGEBgcNyAQ4LCRxeEuDwNIHDywIcFhE4vCLAYQmBwwoBDksJHF5VeP9A4LBSgMMLBA6vCXBYTuDwugCHlwkc3hDgsILAYZUAh5UEDqsFOLxO4LBGgMMqAoc3BTisIXBYK8BhLYHDWwIc1hE4rBPgsJ7A4W0BDhsIHNYLcNhI4PCOAIdNBA4bBDh8QODwroJODoHDRgEOWwgc3hPgsJXAYZMAh08JHN4X4PD/tfcm8DZV////Pu41T5lntiQkIUmSkG5IpiTzPMs8RSVJKkmZkqSQpJLmSaV5nudJkkqUJElSyX+9dE92+3PuvWet2321X//f9zweb/c4e3iv1/Osvc/ea6/1WlsJHDYKcNhG4PCZAIdvCRw2CXDYQeDwuQCHnQQOmwU47CJw+EKAw24Chy0CHPYQOHwpwGEvgcNXAhz2ETh8LcBhP4HDVgEOvxM4fCPA4QCBwzYBDgcJHLYLcIgR5iT8VoBDCoHDdwIcchM47BDgkJfA4XsBDvkJHHYKcChI4PCDAIfCBA67BDgUJXD4UYBDMQKH3QIcShA4/CTAoRSBwx4BDmUIHH4W4FCOwGGvAIcKBA6/CHCoROCwT8GXlcDhVwEOVQkc9gtwqEbg8JsAh+oEDr8LcKhB4PCHAIdaBA4HBDjUJnD4U4BDHQKHgwIc6hI4eGWiz6E+gUNMgEMDAodcAhwaEjikCHBoROCQKsChMYFDbgEOTQgc8ghwaErgkFeAQzMCh3wCHFoQOOQX4NCSwKGAAIc0AoeCAhxaETgUEuDQhsChsACHtgQORQQ4tCNwKCrAoQOBwxECHDoROBQT4NCZwKG4AIcuBA4lBDh0JXAoKcChO4FDKQEOPQkcSgtw6E3gUEaAQ18Ch7ICHPoTOJQT4DCQwKG8AIfBBA4VBDgMJXCoKMBhOIFDJQEO5xE4VBbgMIrAoYoAhzEEDr4Ah3EEDlUFOEwgcDjSgkOKibYmVqT/f2Zpz7vMxCwTl5u4wsSVJmabuMrEHBNXm5hr4hoT15qYZ2K+iQUmFppYZOI6E4tNXG9iiYkbTCw1caOJZSZuMnGzieUmVphYaeIWE6tM3GpitYnbTKwxgfnpMTc75iXHnNyYjxpzMWMeYszBi/lnMfcq5h3FnJuYbxJzLWKeQcyxh/nlMLca5hXDnFqYTwpzKWEeIcyhg/ljMHcK5g3BnBmYLwJzJWCeAHjkwx8e3ujwBYcnNvyg4YUMH2B44ML/Fd6n8P2E5yX8HuF1CJ8/eNzB3w3eZvD1gqcV/JzgZQQfH3jYwL8F3iXw7YBnBfwa4FWAcfoYo47x2RibjHG5GJOK8ZgYi4hxeBiDhvFXGHuEcTcYc4LxFhhrgH726GOO/tXoW4x+tehTiv6U6EuIfnToQ4b+U+g7hH4z6DOC/hLoK4Dn5HhGjOejeDaI52J4JoTnIXgWgHZwtAGj/RNtf2j3QpsP2jtwr4/7XNzj4f4G1/a4rsU1Ha5n8FuO37FD53ATOHZRb+OvXJZ1vpH5Z07Jw+vXG9R+/Jb6K2o92jHt4RkzuvWu2WB766nrx85vuWXvwh/T1720tH2eS0snn6Oa5fmobYLPfS+5coXf+Elt5sVmlM7585ENB4f958Z3uaCk9XeZalNfjuJ9l3+/bDkfVSbnc1QX4JAvT87nOFqAQxOCd0gNAQ5NCRxqCnBoRuBQS4BDCwKHYwQ4tCRwqC3AIY3A4VgBDq0IHOoIcGhD4HCcAIe2BA51BTi0I3CoJ8ChA4FDfQEOnQgcjhfg0JnAoYEAhy4EDicIcNiUN+dzNBTg0I1QH04U4NCDwKGRAIdeBA4nCXDoQ+DQWIBDPwKHkwU4DCBwaCLAYRCBwykCHIYQODQV4DCMwOFUAQ4jCByaCXAYSeDQXIDDaAKHFgIcxhI4nCbAYTyBQ0sBDhMJHE4X4DCZwCFNgMMUAoczBDhcQODQSoBDldScz9FagMM0Qn1oI8BhOoHDmQIcZhA4tBXgMJPA4SwBDrMIHNoJcLiCwKG9AIfZBA4dBDjMIXDoKMBhLoFDJwEOr6fkfI6zBTjMI9SHzgIcFhA4nCPAYRGBQxcBDosJHM4V4LCEwKGrAIelBA7dBDgsI3DoLsBhA6GfWA8BDssJ9aGnAIeVBA69BDisInDoLcBhNYFDHwEOawgc+gpwuIPAoZ8Ah7UEDv0FOKwjcBggwOEeAoeBAhzuI3AYJMDhAQKHwQIcHiJwGCLA4RECh6ECHNYTOAwT4PA4gcNwhfYHAocRAhyeInA4T4DDMwQOIwU4PEfgMEqAwwsEDqMFOLxE4DBGgMMrBA5jBTi8RuAwToDDGwQO4wU4vEXgMEGAwzsEDhMFOLxH4DBJgMMHBA6TBTh8ROBwvgCHTwgcpghw2EjgMFXBJ4fA4QIBDpsJHC4U4LCFwOEiAQ5fEThME+CwlcDhYgEO2wgcpgtw+JbA4RIBDjsIHGYIcNhJ4HCpAIddBA4zBTjsJnC4TIDDHgKHWQIc9hI4XC7AYR+BwxUCHPYTOFwpwOF3AofZAhwOEDhcJcDhIIHDHAEOMcKchFcLcEghcJgrwCE3gcM1AhzyEjhcK8AhP4HDPAEOBQkc5gtwKEzgsECAQ1ECh4UCHIoROCwS4FCCwOE6AQ6lCBwWC3AoQ+BwvQCHcgQOSwQ4VCBwuEGAQyUCh6UKvqwEDjcKcKhK4LBMgEM1AoebBDhUJ3C4WYBDDQKH5QIcahE4rBDgUJvAYaUAhzoEDrcIcKhL4LBKgEN9AodbBTg0IHBYLcChIYHDbQIcGhE4rBHg0JjA4XYBDk0IHO4Q4NCUwOFOAQ7NCBzWCnBoQeBwlwCHlgQO6wQ4pBE43C3AoRWBwz0CHNoQONwrwKEtgcN9AhzaETjcL8ChA4HDAwIcOhE4PCjAoTOBw0MCHLoQODwswKErgcMjAhy6Ezg8KsChJ4HDegEOvQkcHhPg0JfA4XEBDv0JHJ4Q4DCQwGGDAIfBBA5PCnAYSuDwlACH4QQOTwtwOI/A4RkBDqMIHJ4V4DCGwOE5AQ7jCByeF+AwgcDhBQsOKSbOMrEi/f9Hm21rmKhpopaJY0zUNnGsiTomjjNR10Q9E/VNHG+igYkTTDQ0caKJRiZOMtHYxMkmmpg4xURTE6eaaGaiuYkWJk4z0dLE6SbSTJxhopWJ1ibamDjTBOanx9zsmJccc3JjPmrMxYx5iDEHL+afxdyrmHcUc25ivknMtYh5BjHHHuaXw9xqmFcMc2phPinMpYR5hDCHDuaPwdwpmDcEc2ZgvgjMlYB5AuCRD394eKPDFxye2PCDhhcyfIDhgQv/V3ifwvcTnpfwe4TXIXz+4HEHfzd4m8HXC55W8HOClxF8fOBhA/8WeJfAtwOeFfBrgFcBxuljjDrGZ2NsMsblYkwqxmNiLCLG4WEMGsZfYewRxt1gzAnGW2CsAfrZo485+lejbzH61aJPKfpToi8h+tGhDxn6T6HvEPrNoM8I+kugrwCek+MZMZ6P4tkgnovhmRCeh+BZANrB0QaM9k+0/aHdC20+aO/AvT7uc3GPh/sbXNvjuhbXdLiewW85fsdwDsf5C8cu6m38lcuyzs8padiUPLx+vUHtx2+pv6LWox3THp4xo1vvmg22t566fuz8llv2LvzRLMf61cvY58E2yeZ4sYzd+eisBJ/7XnLlCr/xk9rMix1VJufPRy9a5rDdP77LBSXd6kx83ay+y5csNKD8Kel/49tl8/v9x74ttovly5PzOV7m1fPDSe22izUh+Gi8IsChKYHDqwIcmhE4vCbAoQWBw+sCHFoSOLwhwCGNwOFNAQ6tCBzeEuDQhsDhbQEObQkc3hHg0I7A4V0BDh0IHN4T4NCJwOF9AQ6dCRw+EODQhcDhQwEOm/LmfI6PBDh0I9SHjwU49CBw+ESAQy8Ch08FOPQhcNgowKEfgcNnAhwGEDhsEuAwiMDhcwEOQwgcNgtwGEbg8IUAhxEEDlsEOIwkcPhSgMNoAoevBDiMJXD4WoDDeAKHrQIcJhI4fCPAYTKBwzYBDlMIHLYLcLiAwOFbAQ5VUnM+x3cCHKYR6sMOAQ7TCRy+F+Awg8BhpwCHmQQOPwhwmEXgsEuAwxUEDj8KcJhN4LBbgMMcAoefBDjMJXDYI8Dh9ZScz/GzAId5hPqwV4DDAgKHXwQ4LCJw2CfAYTGBw68CHJYQOOwX4LCUwOE3AQ7LCBx+F+CwgdBP7A8BDssJ9eGAAIeVBA5/CnBYReBwUIDDagIHr2z0OawhcIgJcLiDwCGXAIe1BA4pAhzWETikCnC4h8AhtwCH+wgc8ghweIDAIa8Ah4cIHPIJcHiEwCG/AIf1BA4FBDg8TuBQUIDDBgKHQgIcniJwKCzA4RkChyICHJ4jcCgqwOEFAocjBDi8ROBQTIDDKwQOxQU4vEbgUEKAwxsEDiUFOLxF4FBKgMM7BA6lBTi8R+BQRoDDBwQOZQU4fETgUE6AwycEDuUFOGwkcKggwGETgUNFAQ6bCRwqCXDYQuBQWYDDVwQOVQQ4bCVw8AU4bCNwqCrA4VsChyMFOOwgcKgmwGEngcNRAhx2EThUF+Cwm8DhaAEOewgcaghw2EvgUFOAwz4Ch1oCHPYTOBwjwOF3AofaAhwOEDgcK8DhIIFDHQEOMcL8fMcJcEghcKgrwCE3gUM9AQ55CRzqC3DIT+BwvACHggQODQQ4FCZwOEGAQ1ECh4YCHIoROJwowKEEgUMjAQ6lCBxOEuBQhsChsQCHcgQOJwtwqEDg0ESAQyUCh1MEOFQhcGgqwKEqgcOpAhyqETg0E+BQncChuQCHGgQOLQQ41CJwOE2AQ20Ch5YCHOoQOJwuwKEugUOaAIf6BA5nCHBoQODQSoBDQwKH1gIcGhE4tBHg0JjA4UwBDk0IHNoKcGhK4HCWAIdmBA7tBDi0IHBoL8ChJYFDBwEOaQQOHQU4tCJw6CTAoQ2Bw9kCHNoSOHQW4NCOwOEcAQ4dCBy6CHDoROBwrgCHzgQOXQU4dCFw6CbAoSuBQ3cBDt0JHHoIcOhJ4NBTgENvAodeAhz6Ejj0FuDQn8ChjwCHgQQOfQU4DCZw6CfAYSiBQ38BDsMJHAYIcDiPwGGgAIdRBA6DBDiMIXAYLMBhHIHDEAEOEwgchpa1y5HLcv9zSnregpLJrz83ff2wjnqD2o/fUn9FrUc7pj08Y0a33jUbbG89df3Y+S237F34o1k+zFKHLaeTzT+zTblSLMt1ssW6s0smv+7w5PXG/v7HS36bJuk5PLvtvFQTBUzkTrRTyzI09uzrv0uekzxOnkZezh9rV1sea9eUPPyB79m/bBlsLmV33o2/RqTXxfPKHs5pf+FpcZLAvlPS/45I3w6Vu0ioYC5f0nzLL2m+5Zd08ODBXxN97ntZ58M/QX0j08GPKuv9E8rI9G8i+NmoAGDbLycOxvbMP6Bazp755zqWa6BlueKv1OTzLDB5YiPLJl+mURa/GhZcY8lqjVdMW5Y4cEc6/BrhZXuAlivueWdYHKCVzfotHOrH6LI5r6OVhY4qjjrGEHS0ttDhO+oYS9DRxkJHVUcd4wg6zrTQcaSjjvEEHW0tdFRz1DGBoOMsCx1HOeqYSNDRzkJHdUcdkwg62lvoONpRx2SCjg4WOmo46jifoKOjhY6ajjqmEHR0stBRy1HHVIKOsy10HOOo4wKCjs4WOmo76riQoOMcCx3HOuq4iKCji4WOOo46phF0nGuh4zhHHRcTdHS10FHXUcd0go5uFjrqOeq4hKCju4WO+o46ZhB09LDQcbyjjksJOnpa6GjgqGMmQUcvCx0nOOq4jKCjt4WOho46ZhF09LHQcaKjjssJOvpa6GjkqOMKgo5+FjpOctRxJUFHfwsdjR11zCboGGCh42RHHVcRdAy00NHEUcccgo5BFjpOcdRxNUHHYAsdTR11zCXoGGKh41RHHdcQdAy10NHMUce1BB3DLHQ0d9Qxj6BjuIWOFo465hN0jLDQcZqjjgUEHedZ6GjpqGMhQcdICx2nO+pYRNAxykJHmqOO6wg6RlvoOMNRx2KCjjEWOlo56rieoGOshY7WjjqWEHSMs9DRxlHHDQQd4y10nOmoYylBxwQLHW0dddxI0DHRQsdZjjqWEXRMstDRzlHHTQQdky10tHfUcTNBx/kWOjo46lhO0DHFQkdHRx0rCDqmWujo5KhjJUHHBRY6znbUcQtBx4UWOjo76lhF0HGRhY5zHHXcStAxzUJHF0cdqwk6LrbQca6jjtsIOqZb6OjqqGMNQcclFjq6Oeq4naBjhoWO7o467iDouNRCRw9HHXcSdMy00NHTUcdago7LLHT0ctRxF0HHLAsdvR11rLPQgXFJ7Uw0T/8/xlxgvAL6+qOfPPqYo382+jajXzD61KI/Kvpyoh8k+hCi/x36rqHfF/pMob8R+uqgnwv6iKB/Bfom4Lk+nonjeTKexeI5Jp4B4vkZnj3huQ2eeeB5Adra0U6NNl60j6JtEe1yaNNCexDaUtAOgXt43P/i3hH3XbhnwfU+rpVxnYlrNFzf4NoAv6v4TcL5HOdCnEdwDKL+4rtfVzYxHxv2dyfPPp/F+KF8A3N4DBfGD6HstnXtnuT1Hjpe2iX43PfsXrbabMromuNey2Ouvfd/x1z4mLM9n+I7Cg5YTWaMHL4n2zz3WuS4z/J4aJ/gc99LrlzhN35Sm3GOh/sccuBle769/78/38b+/sezO9/e73C+fYBXvw4X1m672AOE+vWgAId8eXI+x0MCHJrky/kcDwtwaErg8IgAh2YEDo8KcGhB4LBegENLAofHBDikETg8LsChFYHDEwIc2hA4bBDg0JbA4UkBDu0IHJ4S4NCBwOFpAQ6dCByeEeDQmcDhWQEOXQgcnhPgsClvzud4XoBDN0J9eEGAQw8ChxcFOPQicHhJgEMfAoeXBTj0I3B4RYDDAAKHVwU4DCJweE2AwxACh9cFOAwjcHhDgMMIAoc3BTiMJHB4S4DDaAKHtwU4jCVweEeAw3gCh3cFOEwkcHhPgMNkAof3BThMIXD4QIDDBQQOHwpwqJKa8zk+EuAwjVAfPhbgMJ3A4RMBDjMIHD4V4DCTwGGjAIdZBA6fCXC4gsBhkwCH2QQOnwtwmEPgsFmAw1wChy8EOLyekvM5tghwmEeoD18KcFhA4PCVAIdFBA5fC3BYTOCwVYDDEgKHbwQ4LCVw2CbAYRmBw3YBDhsI/cS+FeCwnFAfvhPgsJLAYYcAh1UEDt8LcFhN4LBTgMMaAocfBDjcQeCwS4DDWgKHHwU4rCNw2C3A4R4Ch58EONxH4LBHwf+BwOFnCw7wFOngHfbbgWcC/AIwVh7jxDFGGuODMTYW40IxJhLjATEWDuPAMAYK438w9gXjPjDmAf390dcd/bzRxxn9e9G3Ff060acR/fnQlw39uNCHCf130HcF/TbQZwHP6/GsGs9p8YwSz+fwbArPZfBMAu3xaItGOyzaINH+hrYntLugzQH327jXxH0W7jFwfY1rS1xX4ZoCv6f4LcF5FOcQHD+oO+AWf9n64DT27P124NNhm+dBixx7LY+HDgk+973kyhV+4ye1GccPZa9DDrxs/XZ+ST5PTvntHKpOtnxQF1H28HZZ6d3Hq1+HC2u3XWwfoX79KsCB4bezX4ADw2/nNwEODL+d3wU4MPx2/hDgwPDbOSDAgeG386cAB4bfzkEBDgy/Ha9c9Dkw/HZiAhwYfju5BDgw/HZSBDgw/HZSBTgw/HZyC3Bg+O3kEeDA8NvJK8CB4beTT4ADw28nvwAHht9OAQEODL+dggIcGH47hQQ4MPx2CgtwYPjtFBHgwPDbKSrAgeG3c4QAB4bfTjEBDgy/neICHBh+OyUEODD8dkoKcGD47ZQS4MDw2yktwIHht1NGgAPDb6esAAeG3045AQ4Mv53yAhwYfjsVBDgw/HYqCnBg+O1UEuDA8NupLMCB4bdTRYADw2/HF+DA8NupKsCB4bdzpAAHht9ONQEODL+dowQ4MPx2qgtwYPjtHC3AgeG3U0OAA8Nvp6YAB4bfTi0BDgy/nWMEODD8dmoLcGD47RwrwIHht1NHgAPDb+c4AQ4Mv526AhwYfjv1BDgw/HbqC3Bg+O0cL8CB4bfTQIADw2/nBAEODL+dhgIcGH47JwpwYPjtNBLgwPDbOcmCAzxFOnqH/XbgmQC/AIyVxzhxjJHG+GCMjcW4UIyJxHhAjIXDODCMgcL4H4x9wbgPjHlAf3/0dUc/b/RxRv9e9G1Fv070aUR/PvRlQz8u9GFC/x30XUG/DfRZwPN6PKvGc1o8o8TzuUPPpkzgmQTa49EWjXZYtEGi/Q1tT2h3QZsD7rdxr4n7LNxj4Poa15a4rsI1BX5P8VuC8yjOITh+UHfALf6y9cE5ybP32/nVwW/nV4scjS2Ph44JPve95MoVfuMntRnHD8WGQ/Bl67dzcvJ5cspv51CRbfmgLqLs4e2y0tuEV78OF9Zuu1iTcjmf4xQBDgy/naYK9YHw+3uqAAeG304zAQ4Mv53mAhwYfjstBDgw/HZOE+DA8NtpKcCB4bdzugAHht9OmgAHht/OGQIcGH47rQQ4MPx2WgtwYPjttBHgwPDbOVOAA8Nvp60AB4bfzlkCHBh+O+0EODD8dtoLcGD47XQQ4MDw2+kowIHht9NJgAPDb+dsAQ4Mv53OAhwYfjvnCHBg+O10EeDA8Ns5V4ADw2+nqwAHht9ONwEODL+d7gIcGH47PQQ4MPx2egpwYPjt9BLgwPDb6S3AgeG300eAA8Nvp68AB4bfTj8BDgy/nf4CHBh+OwMEODD8dgYKcGD47QwS4MDw2xkswIHhtzNEgAPDb2eoAAeG384wAQ4Mv53hAhwYfjsjBDgw/HbOE+DA8NsZKcCB4bczSoADw29ntAAHht/OGAEODL+dsQIcGH474wQ4MPx2xgtwYPjtTBDgwPDbmSjAgeG3M0mAA8NvZ7IAB4bfzvkCHBh+O1MEODD8dqYKcGD47VwgwIHht3OhAAeG385FFhxg0NHJO+y3A88E+AVgrDzGiWOMNMYHY2wsxoViTCTGA2IsHMaBYQwUxv9g7AvGfWDMA/r7o687+nmjjzP696JvK/p1ok8j+vOhLxv6caEPE/rvoO8K+m2gzwKe1+NZNZ7T4hklns/h2RSey+CZBNrj0RaNdli0QaL9DW1PaHdBmwPut3Gvifss3GPg+hrXlriuwjUFfk/xW4LzKM4hOH5Qd8At/rL1wdlcyt5vBz4dtnmC3h5Z5ZhmeTx0SvC57yVXrvAbP6nNOH4o0xxy4GXrt3Nx8nlyym8nFf/Y8kFdRNnD22Wldzqvfh0urN12semE+nWJAAeG384MAQ4Mv51LBTgw/HZmCnBg+O1cJsCB4bczS4ADw2/ncgEODL+dKwQ4MPx2rhTgwPDbmS3AgeG3c5UAB4bfzhwBDgy/nasFODD8duYKcGD47VwjwIHht3OtAAeG3848AQ4Mv535AhwYfjsLBDgw/HYWCnBg+O0sEuDA8Nu5ToADw29nsQAHht/O9QIcGH47SwQ4MPx2bhDgwPDbWSrAgeG3c6MAB4bfzjIBDgy/nZsEODD8dm4W4MDw21kuwIHht7NCgAPDb2elAAeG384tAhwYfjurBDgw/HZuVegnRuCwWoADw2/nNgEODL+dNQIcGH47twtwYPjt3CHAgeG3c6cAB4bfzloBDgy/nbsEODD8dtYJcGD47dwtwIHht3OPAAeG3869AhwYfjv3CXBg+O3cL8CB4bfzgAAHht/OgwIcGH47DwlwYPjtPCzAgeG384gAB4bfzqMCHBh+O+sFODD8dh4T4MDw23lcgAPDb+cJAQ4Mv50NAhwYfjtPCnBg+O08JcCB4bfztAUHeIqc7R3224FnAvwCMFYe48QxRhrjgzE2FuNCMSYS4wExFg7jwDAGCuN/MPYF4z4w5gH9/dHXHf280ccZ/XvRtxX9OtGnEf350JcN/bjQhwn9d9B3Bf020GcBz+vxrBrPafGMEs/n8GwKz2XwTALt8WiLRjss2iDR/oa2J7S7oM0B99u418R9Fu4xcH2Na0tcV+GaAr+n+C3BeRTnEBw/qDvgFn/Z+uA08uz9duDTYZsn6O2RVY5nLI+HsxN87nvJlSv8xk9qM44fyjMOOfCy9dt5Nvk8OeW3kxv/2PJBXUTZw9tlpfc5Xv06XFi77WLPEerX8wIcGH47LwhwYPjtvCjAgeG385IAB4bfzssCHBh+O68IcGD47bwqwIHht/OaAAeG387rAhwYfjtvCHBg+O28KcCB4bfzlgAHht/O2wIcGH477whwYPjtvCvAgeG3854AB4bfzvsCHBh+Ox8IcGD47XwowIHht/ORAAeG387HAhwYfjufCHBg+O18KsCB4bezUYADw2/nMwEODL+dTQIcGH47nwtwYPjtbBbgwPDb+UKAA8NvZ4sAB4bfzpcCHBh+O18JcGD47XwtwIHht7NVgAPDb+cbAQ4Mv51tAhwYfjvbBTgw/Ha+FeDA8Nv5ToADw29nhwAHht/O9wIcGH47OwU4MPx2fhDgwPDb2SXAgeG386MAB4bfzm4BDgy/nZ8EODD8dvYIcGD47fwswIHht7NXgAPDb+cXAQ4Mv519AhwYfju/CnBg+O3sF+DA8Nv5TYADw2/ndwEODL+dPwQ4MPx2DghwYPjt/CnAgeG3c1CAA8NvxysffQ4Mv52YAAeG304uAQ4Mv50UAQ4Mv51UCw7wFOnsHfbbgWcC/AIwVh7jxDFGGuODMTYW40IxJhLjATEWDuPAMAYK438w9gXjPjDmAf390dcd/bzRxxn9e9G3Ff060acR/fnQlw39uNCHCf130HcF/TbQZwHP6/GsGs9p8YwSz+fwbArPZfBMAu3xaItGOyzaINH+hrYntLugzQH327jXxH0W7jFwfY1rS1xX4ZoCv6f4LcF5FOcQHD+oO+AWf9n64MCz5DxLv53nHfx2nrfw28lteTx0TvC57yVXrvAbP6nNOH4oNhyCL1u/nTzJ58kpv508+MeWD+oiyh7eLiu9eXn163Bh7baL5S2f8znyWeawPebnlPS8q0smv/5cs+41Je2/z/wC3yfDN6iAAAeGb1BBAQ4M36BCAhwYvkGFBTgwfIOKCHBg+AYVFeDA8A06QoADwzeomAAHhm9QcQEODN+gEgIcGL5BJQU4MHyDSglwYPgGlRbgwPANKiPAgeEbVFaAA8M3qJwAB4ZvUHkBDgzfoAoCHBi+QRUFODB8gyoJcGD4BlUW4MDwDaoiwIHhG+QLcGD4BlUV4MDwDTpSgAPDN6iaAAeGb9BRAhwYvkHVBTgwfIOOFuDA8A2qIcCB4RtUU4ADwzeolgAHhm/QMQIcGL5BtQU4MHyDjhXgwPANqiPAgeEbdJwAB4ZvUF0BDgzfoHoCHBi+QfUFODB8g44X4MDwDWogwIHhG3SCAAeGb1BDAQ4M36ATBTgwfIMaCXBg+AadJMCB4RvUWIADwzfoZAEODN+gJgIcGL5BpwhwYPgGNRXgwPANOlWAA8M3qJkAB4ZvUHMBDgzfoBYCHBi+QacJcGD4BrUU4MDwDTpdgAPDNyhNgAPDN+gMAQ4M36BWAhwYvkGtBTgwfIPaWPoGneMd9g2CZwL8AjBWHuPEMUYa44MxNhbjQjEmEuMBMRYO48AwBgrjfzD2BeM+MOYB/f3R1x39vNHH+VD/XhPo14k+jejPh75s6MeFPkzov4O+K+i3gT4LeF6PZ9V4TotnlHg+h2dTeC6DZxJoj0dbNNph0QaJ9je0PaHdBW0OuN/GvSbus3CPgetrXFviugrXFPg9xW8JzqM4h+D4Qd0Bt/gr7O2RjA+QhX/IIa8W+HSE82S1XTBHVmU6s7zd8XBOgs99L7lyhd/4SW3G8XU50yEHXra+QW2Tz5NTvkF58Y8tH9RFlD28XVZ6z+LVr8OFtdsudhahfrUT4MDw22kvwIHht9NBgAPDb6ejAAeG304nAQ4Mv52zBTgw/HY6C3Bg+O2cI8CB4bfTRYADw2/nXAEODL+drgIcGH473QQ4MPx2ugtwYPjt9BDgwPDb6SnAgeG300uAA8Nvp7cAB4bfTh8BDgy/nb4CHBh+O/0EODD8dvoLcGD47QwQ4MDw2xkowIHhtzNIgAPDb2ewAAeG384QAQ4Mv52hAhwYfjvDBDgw/HaGC3Bg+O2MEODA8Ns5T4ADw29npAAHht/OKAEODL+d0QIcGH47YwQ4MPx2xgpwYPjtjBPgwPDbGS/AgeG3M0GAA8NvZ6IAB4bfziQBDgy/nckCHBh+O+cLcGD47UwR4MDw25kqwIHht3OBAAeG386FAhwYfjsXCXBg+O1ME+DA8Nu5WIADw29nugAHht/OJQIcGH47MwQ4MPx2LhXgwPDbmSnAgeG3c5kAB4bfziwBDgy/ncsFODD8dq4Q4MDw27lSgAPDb2e2AAeG385VAhwYfjtzBDgw/HauFuDA8NuZa8EBniJdvMN+O/BMgF8AxspjnDjGSGN8MMbGYlwoxkRiPCDGwmEcGMZAYfwPxr5g3AfGPKC/P/q6o583+jijfy/6tqJfJ/o0oj8f+rKhHxf6MKH/DvquoN8G+izgeT2eVeM5LZ5R4vkcnk3huQyeSaA9Hm3RaIdFGyTa39D2hHYXtDngfhv3mrjPwj0Grq9xbYnrKlxT4PcUvyU4j+IcguMHdQfc4i9bHxx4lowoe3j9ZPx54NNhmyfo7ZFVjmssj4cuCT73veTKFX7jJ7UZxw/lGocceNn67VybfJ6Yhd9OzMJvJ/b3P55d3UXZw9tlpXeeBVfsOyX9b6LtXPytkl13fnk7fvGX7fe/4L///v/awPtnubNaPX7ucjnnxdfNis1Cx7oS3M62fHNKmnpd0uJ3M3192+NgkeX5xUXHPEsd8xx0XMf7vThcWLvtKL5RiwU4MHyjrhfgwPCNWiLAgeEbdYMAB4Zv1FIBDgzfqBsFODB8o5YJcGD4Rt0kwIHhG3WzAAeGb9RyAQ4M36gVAhwYvlErBTgwfKNuEeDA8I1aJcCB4Rt1qwAHhm/UagEODN+o2wQ4MHyj1ghwYPhG3S7AgeEbdYcAB4Zv1J0CHBi+UWsFODB8o+4S4MDwjVonwIHhG3W3AAeGb9Q9AhwYvlH3CnBg+EbdJ8CB4Rt1vwAHhm/UAwIcGL5RDwpwYPhGPSTAgeEb9bAAB4Zv1CMCHBi+UY8KcGD4Rq0X4MDwjXpMgAPDN+pxAQ4M36gnBDgwfKM2CHBg+EY9KcCB4Rv1lAAHhm/U0wIcGL5RzwhwYPhGPSvAgeEb9ZwAB4Zv1PMCHBi+US8IcGD4Rr0owIHhG/WSAAeGb9TLAhwYvlGvCHBg+Ea9KsCB4Rv1mgAHhm/U6wIcGL5RbwhwYPhGvSnAgeEb9ZYAB4Zv1NsCHBi+Ue8IcGD4Rr0rwIHhG/WeAAeGb9T7AhwYvlEfWPpY2O4ffiHzHHxmfsth/xP4wywob+9B86GF34uthnBZsto/PEJeKpP8+vAIGVbW/rv4yKKOpJoo7B3O8Y8ChPJmVd5mya/7j3wfl89Gwo/L22/3iYVBl2u5Pil/+APfS/7lcsAudDhg/8zhAzZ/+b9MnWzLddCyXPGXrRHUpxYnBgtWsYPZNALLqtzNvb/qlu3Jp7lFjo05/CMD9hsd6sZnjgZVn/0LZmYbLc4Zm0hmZp//93X40MvFlMzCkOvQj/8ih/qyuXzO67jOUsd1Djq+yOHjEeX60OHiakuELq7wXXxk+V185PBdfGl5cZU//e//FCCUN6vy2lxcZSdPU4+T5/Ns1umsvqfTvL/Op7b1KMVi3dM8e1ax8Bs/qc282MYcBtbC++tHzhaYzQ/jV5YHTxHvcHky05ZVGZM9aA8ePPhFos99L+sc+CdY1q/TbwC2lvf+eTXydfpZJ/jZ1gQFDF8NZFWAL5P7IhaYLyL2tcWXttUSnm3FQwX62vFuyeUW/GXLW/DFDjad35TPeR2vWOq43kHHNoKOVy11LHHQsZ2g4zVLHTc46PiWoON1Sx1LHXR8R9DxhqWOGx107CDoeNNSxzIHHd8TdLxlqeMmBx07CTrettRxs4OOHwg63rHUsdxBxy6Cjnctdaxw0PEjQcd7ljpWOujYTdDxvqWOWxx0/ETQ8YGljlUOOvYQdHxoqeNWBx0/E3R8ZKljtYOOvQQdH1vquM1Bxy8EHZ9Y6ljjoGMfQcenljpud9DxK0HHRksddzjo2E/Q8ZmljjsddPxG0LHJUsdaBx2/E3R8bqnjLgcdfxB0bLbUsc5BxwGCji8sddztoONPgo4tljrucdBxkKDjS0sd9zro8CrkvI6vLHXc56AjRtDxtaWO+x105CLo2Gqp4wEHHSkEHd9Y6njQQUcqQcc2Sx0POejITdCx3VLHww468hB0fGup4xEHHXkJOr6z1PGog458BB07LHWsd9CRn6Dje0sdjznoKEDQsdNSx+MOOgoSdPxgqeMJBx2FCDp2WerY4KCjMEHHj5Y6nnTQUYSgY7eljqccdBQl6PjJUsfTDjqOIOjYY6njGQcdxQg6frbU8ayDjuIEHXstdTznoKMEQccvljqed9BRkqBjn6WOFxx0lCLo+NVSx4sOOkoTdOy31PGSg44yBB2/Wep42UFHWYKO3y11vOKgoxxBxx+WOl510FGeoOOApY7XHHRUIOj401LH6w46KhJ0HLTU8YaDjkoEHV5ZOx1vOuioTNARs9TxloOOKgQduSx1vO2gwyfoSLHU8Y6DjqoEHamWOt510HEkQUduSx3vOeioRtCRx1LH+w46jiLoyGup4wMHHdUJOvJZ6vjQQcfRBB35LXV85KCjBkFHAUsdHzvoqEnQUdBSxycOOmoRdBSy1PGpg45jCDoKW+rY6KCjNkFHEUsdnznoOJago6iljk0OOuoQdBxhqeNzBx3HEXQUs9Sx2UFHXYKO4pY6vnDQUY+go4Slji0OOuoTdJS01PGlg47jCTpKWer4ykFHA4KO0pY6vnbQcQJBRxlLHVsddDQk6ChrqeMbBx0nEnSUs9SxzUFHI4KO8pY6tjvoOImgo4Kljm8ddDQm6KhoqeM7Bx0nE3RUstSxw0FHE4KOypY6vnfQcQpBRxVLHTsddDQl6PAtdfzgoONUgo6qljp2OehoRtBxpKWOHx10NCfoqGapY7eDjhYEHUdZ6vjJQcdpBB3VLXXscdDRkqDjaEsdPzvoOJ2go4aljr0OOtIIOmpa6vjFQccZBB21LHXsc9DRiqDjGEsdvzroaE3QUdtSx34HHW0IOo611PGbg44zCTrqWOr43UFHW4KO4yx1/OGg4yyCjrqWOg446GhH0FHPUsefDjraE3TUt9Rx0EFHB4KO4y11eKXsdXQk6GhgqSPmoKMTQccJljpyOeg4m6CjoaWOFAcdnQk6TrTUkeqg4xyCjkaWOnI76OhC0HGSpY48DjrOJehobKkjr4OOrgQdJ1vqyOegoxtBRxNLHfkddHQn6DjFUkcBBx09CDqaWuoo6KCjJ0HHqZY6Cjno6EXQ0cxSR2EHHb0JOppb6ijioKMPQUcLSx1FHXT0Jeg4zVLHEQ46+hF0tLTUUcxBR3+CjtMtdRR30DGAoCPNUkcJBx0DCTrOsNRR0kHHIIKOVpY6SjnoGEzQ0dpSR2kHHUMIOtpY6ijjoGMoQceZljrKOugYRtDR1lJHOQcdwwk6zrLUUd5BxwiCjnaWOio46DiPoKO9pY6KDjpGEnR0sNRRyUHHKIKOjpY6KjvoGE3Q0clSRxUHHWMIOs621OE76BhL0NHZUkdVBx3jCDrOsdRxpIOO8QQdXSx1VHPQMYGg41xLHUc56JhI0NHVUkd1Bx2TCDq6Weo42kHHZIKO7pY6ajjoOJ+go4eljpoOOqYQdPS01FHLQcdUgo5eljqOcdBxAUFHb0sdtR10XEjQ0cdSx7EOOi4i6OhrqaOOg45pBB39LHUc56DjYoKO/pY66jromE7QMcBSRz0HHZcQdAy01FHfQccMgo5BljqOd9BxKUHHYEsdDRx0zCToGGKp4wQHHZcRdAy11NHQQccsCx2YH/5cEyvS/485xzFfN+a6xjzRmGMZ8xNjbl/Mi4s5ZTEfK+YyxTygmEMT809i7kbMe4g5AzHfHuaqwzxvmCMN84thbi7Ma4U5oTCfEuYiwjw+mAMH88dg7hXMW4I5PzBfBuaawDwNmOMA8wPAWx++9PB0hx86vMThww0Pa/g/wzsZvsPw7IXfLbxi4bMKj1L4e8IbE76S8GQ85GdY4S8fPXjQwb8N3mfwDYPnFvyq4PUEnyR4DMGfB9428IWBpwr8SODlAR8MeEjAfwHeBRj3jzHzGG+OsdoY54wxwhhfi7GpGNeJMZEYT4ixeBjHhjFgGD+FsUcYt4MxLxgvgrEWGKeAPv7oH4++5eiXjT7N6A+MvrToh4o+nOj/iL6D6HeHPmvo74W+UuhnhD466N+CviHoV4E+CXiej2fheI6MZ7B4folnf3huhmdOeF6DZx14ToA2drRPo20X7aJoU0R7HNqy0A6ENhS0P+DeHfe9uGfE/RbuVXCdj2tkXF/i2gzXNbgmwO8pfotwHsc5EOcPHHuot39X/lCdz+KVe6OpU1+Wtz9WLq+Q/LGSK/1YCb98z+5lqS1mU0bXHFdUyNlzH8rzVfnkv5cWJjY6fJ9XVrA793X1/u/c93/nvmid+3JZ1nkcJxbHbwzr4zixPYaDObIq0+wKdufVrgk+973kyhV+4ye1Gee8Otsyh+vvnu13udHiXHwV77s8XEC77WJXEb7LOQIc8uXJ+RxXC3Boki/nc8wV4NCUwOEaAQ7NCByuFeDQgsBhngCHlgQO8wU4pBE4LBDg0IrAYaEAhzYEDosEOLQlcLhOgEM7AofFAhw6EDhcL8ChE4HDEgEOnQkcbhDg0IXAYakAh015cz7HjQIcuhHqwzIBDj0IHG4S4NCLwOFmAQ59CByWC3DoR+CwQoDDAAKHlQIcBhE43CLAYQiBwyoBDsMIHG4V4DCCwGG1AIeRBA63CXAYTeCwRoDDWAKH2wU4jCdwuEOAw0QChzsFOEwmcFgrwGEKgcNdAhwuIHBYJ8ChSmrO57hbgMM0Qn24R4DDdAKHewU4zCBwuE+Aw0wCh/sFOMwicHhAgMMVBA4PCnCYTeDwkACHOQQODwtwmEvg8IgAh9dTcj7HowIc5hHqw3oBDgsIHB4T4LCIwOFxAQ6LCRyeEOCwhMBhgwCHpQQOTwpwWEbg8JQAhw2EfmJPC3BYTqgPzwhwWEng8KwAh1UEDs8JcFhN4PC8AIc1BA4vCHC4g8DhRQEOawkcXhLgsI7A4WUBDvcQOLwiwOE+AodXBTg8QODwmgCHhwgcXhfg8AiBwxsCHNYTOLwpwOFxAoe3FNofCBzeFuDwFIHDOwIcniFweFeAw3MEDu8JcHiBwOF9AQ4vETh8IMDhFQKHDwU4vEbg8JEAhzcIHD4W4PAWgcMnAhzeIXD4VIDDewQOGwU4fEDg8JkAh48IHDYJcPiEwOFzAQ4bCRw2K/jkEDh8IcBhM4HDFgEOWwgcvhTg8BWBw1cCHLYSOHwtwGEbgcNWAQ7fEjh8I8BhB4HDNgEOOwkctgtw2EXg8K0Ah90EDt8JcNhD4LBDgMNeAofvBTjsI3DYKcBhP4HDDwIcfidw2CXA4QCBw48CHA4SOOwW4BDLn/M5fhLgkELgsEeAQ24Ch58FOOQlcNgrwCE/gcMvAhwKEjjsE+BQmMDhVwEORQkc9gtwKEbg8JsAhxIEDr8LcChF4PCHAIcyBA4HBDiUI3D4U4BDBQKHgwIcKhE4eBWjz6EKgUNMgENVAodcAhyqETikCHCoTuCQKsChBoFDbgEOtQgc8ghwqE3gkFeAQx0Ch3wCHOoSOOQX4FCfwKGAAIcGBA4FBTg0JHAoJMChEYFDYQEOjQkcighwaELgUFSAQ1MChyMEODQjcCgmwKEFgUNxAQ4tCRxKCHBII3AoKcChFYFDKQEObQgcSgtwaEvgUEaAQzsCh7ICHDoQOJQT4NCJwKG8AIfOBA4VBDh0IXCoKMChK4FDJQEO3QkcKgtw6EngUEWAQ28CB1+AQ18Ch6oCHPoTOBwpwGEggUM1AQ6DCRyOEuAwlMChugCH4QQORwtwOI/AoYYAh1EEDjUFOIwhcKglwGEcgcMxAhwmEDjUtuCQYqKbiRXp/7+6gufNNXGNiWtNzDMx38QCEwtNLDJxnYnFJq43scTEDSaWmrjRxDITN5m42cRyEytMrDRxi4lVJm41sdrEbSbWmLjdxB0m7jSx1sRdJtaZuNvEPSbuNYH56TE3O+Ylx5zcmI8aczFjHmLMwYv5ZzH3KuYdxZybmG8Scy1inkHMsYf55TC3GuYVw5xamE8KcylhHiHMoYP5YzB3CuYNwZwZmC8CcyVgngB45MMfHt7o8AWHJzb8oOGFDB9geODC/xXep/D9hOcl/B7hdQifP3jcwd8N3mbw9YKnFfyc4GUEHx942MC/Bd4l8O2AZwX8GuBVgHH6GKOO8dkYm4xxuRiTivGYGIuIcXgYg4bxVxh7hHE3GHOC8RYYa4B+9uhjjv7V6FuMfrXoU4r+lOhLiH506EOG/lPoO4R+M+gzgv4S6CuA5+R4Rozno3g2iOdieCaE5yF4FoB2cLQBo/0TbX9o90KbD9o7cK9/6D7XBO5vcG2P61pc0+F6Br/l+B3DORznLxy7qLfxVy7LOt/M/LOx/OH16w1qP35L/RW1Hu2Y9vCMGd1612ywvfXU9WPnt9yyd+GP6evOqWCfZ06F5HMca3k+6pbgc99LrlzhN35Sm3mxqyrk/PnIhoPD/nPju/yyvPV3mcumvtThfZd/v2w516mY8zmOy+Z3mRVn/B6dlv43uF1WaVIs1j3Nojx1Bb73fHlyPkc9AQ5NCF4p9QU4NCVwOF6AQzMChwYCHFoQOJwgwKElgUNDAQ5pBA4nCnBoReDQSIBDGwKHkwQ4tCVwaCzAoR2Bw8kCHDoQODQR4NCJwOEUAQ6dCRyaCnDoQuBwqgCHTXkJ9zACHLoR6kNzAQ49CBxaCHDoReBwmgCHPgQOLQU49CNwOF2AwwAChzQBDoMIHM4Q4DCEwKGVAIdhBA6tBTiMIHBoI8BhJIHDmQIcRhM4tBXgMJbA4SwBDuMJHNoJcJhI4NBegMNkAocOAhymEDh0FOBwAYFDJwEOVVJzPsfZAhymEepDZwEO0wkczhHgMIPAoYsAh5kEDucKcJhF4NBVgMMVBA7dBDjMJnDoLsBhDoFDDwEOcwkcegpweD0l53P0EuAwj1AfegtwWEDg0EeAwyICh74CHBYTOPQT4LCEwKG/AIelBA4DBDgsI3AYKMBhA6Gf2CABDssJ9WGwAIeVBA5DBDisInAYKsBhNYHDMAEOawgchgtwuIPAYYQAh7UEDucJcFhH4DBSgMM9BA6jBDjcR+AwWoDDAwQOYwQ4PETgMFaAwyMEDuMEOKwncBgvwOFxAocJCu0PBA4TBTg8ReAwSYDDMwQOkwU4PEfgcL4AhxcIHKYIcHiJwGGqAIdXCBwuEODwGoHDhQIc3iBwuEiAw1sEDtMEOLxD4HCxAIf3CBymC3D4gMDhEgEOHxE4zBDg8AmBw6UCHDYSOMxU8MkhcLhMgMNmAodZAhy2EDhcLsDhKwKHKwQ4bCVwuFKAwzYCh9kCHL4lcLhKgMMOAoc5Ahx2EjhcLcBhF4HDXAEOuwkcrhHgsIfA4VoBDnsJHOYJcNhH4DBfgMN+AocFAhx+J3BYKMDhAIHDIgEOBwkcrhPgECPMwbhYgEMKgcP1AhxyEzgsEeCQl8DhBgEO+QkclgpwKEjgcKMAh8IEDssEOBQlcLhJgEMxAoebBTiUIHBYLsChFIHDCgEOZQgcVgpwKEfgcIsAhwoEDqsEOFQicLhVwZeVwGG1AIeqBA63CXCoRuCwRoBDdQKH2wU41CBwuEOAQy0ChzsFONQmcFgrwKEOgcNdAhzqEjisE+BQn8DhbgEODQgc7hHg0JDA4V4BDo0IHO4T4NCYwOF+AQ5NCBweEODQlMDhQQEOzQgcHhLg0ILA4WEBDi0JHB4R4JBG4PCoAIdWBA7rBTi0IXB4TIBDWwKHxwU4tCNweEKAQwcChw0CHDoRODwpwKEzgcNTAhy6EDg8LcChK4HDMwIcuhM4PCvAoSeBw3MCHHoTODwvwKEvgcMLAhz6Ezi8KMBhIIHDSwIcBhM4vCzAYSiBwysCHIYTOLwqwOE8AofXBDiMInB4XYDDGAKHNwQ4jCNweFOAwwQCh7csOKSY6G5iRfr/65lt65s43kQDEyeYaGjiRBONTJxkorGJk000MXGKiaYmTjXRzERzEy1MnGaipYnTTaSZOMNEKxOtTbQxcaaJtibOMtHORHsTHUx0NNHJxNkmOps4xwTmp8fc7JiXHHNyYz5qzMWMeYgxBy/mn8Xcq5h3FHNuYr5JzLWIeQYxxx7ml8PcaphXDHNqYT4pzKWEeYQwhw7mj8HcKZg3BHNmYL4IzJWAeQLgkQ9/eHijwxccntjwg4YXMnyA4YEL/1d4n8L3E56X8HuE1yF8/uBxB383eJvB1wueVvBzgpcRfHzgYQP/FniXwLcDnhXwa4BXAcbpY4w6xmdjbDLG5WJMKsZjYiwixuFhDBrGX2HsEcbdYMwJxltgrAH62aOPOfpXo28x+tWiTyn6U6IvIfrRoQ8Z+k+h7xD6zaDPCPpLoK8AnpPjGTGej+LZIJ6L4ZkQnofgWQDawdEGjPZPtP2h3QttPmjvwL0+7nNxj4f7G1zb47oW13S4nsFvOX7HcA7H+QvHLupt/JUrVOfrDWo/fkv9FbUe7Zj28IwZ3XrXbLC99dT1Y+e33LJ34Y9m+cbynndcxeSPEaxft+L/5slqu2COrMr0dkW781H3BJ/7XnLlCr/xk9rMi9WpmPPno7ctc1juPze+yy/LW3+XKdguvm5W3+U7vO/y75ct53cI3+W7Ahzy5cn5HO8JcGhC8A55X4BDUwKHDwQ4NCNw+FCAQwsCh48EOLQkcPhYgEMagcMnAhxaETh8KsChDYHDRgEObQkcPhPg0I7AYZMAhw4EDp8LcOhE4LBZgENnAocvBDh0IXDYIsBhU96cz/GlAIduhPrwlQCHHgQOXwtw6EXgsFWAQx8Ch28EOPQjcNgmwGEAgcN2AQ6DCBy+FeAwhMDhOwEOwwgcdghwGEHg8L0Ah5EEDjsFOIwmcPhBgMNYAoddAhzGEzj8KMBhIoHDbgEOkwkcfhLgMIXAYY8AhwsIHH4W4FAlNedz7BXgMI1QH34R4DCdwGGfAIcZBA6/CnCYSeCwX4DDLAKH3wQ4XEHg8LsAh9kEDn8IcJhD4HBAgMNcAoc/BTi8npLzOQ4KcJhHqA9epehzWEDgEBPgsIjAIZcAh8UEDikCHJYQOKQKcFhK4JBbgMMyAoc8Ahw2EPqJ5RXgsJxQH/IJcFhJ4JBfgMMqAocCAhxWEzgUFOCwhsChkACHOwgcCgtwWEvgUESAwzoCh6ICHO4hcDhCgMN9BA7FBDg8QOBQXIDDQwQOJQQ4PELgUFKAw3oCh1ICHB4ncCit0P5A4FBGgMNTBA5lBTg8Q+BQToDDcwQO5QU4vEDgUEGAw0sEDhUFOLxC4FBJgMNrBA6VBTi8QeBQRYDDWwQOvgCHdwgcqgpweI/A4UgBDh8QOFQT4PARgcNRAhw+IXCoLsBhI4HD0QIcNhE41BDgsJnAoaYAhy0EDrUEOHxF4HCMAIetBA61BThsI3A4VoDDtwQOdQQ47CBwOE6Aw04Ch7oCHHYRONQT4LCbwKG+AIc9BA7HC3DYS+DQQIDDPgKHEwQ47CdwaCjA4XcChxMFOBwgcGgkwOEggcNJAhxihDkJGwtwSCFwOFmAQ24ChyYCHPISOJwiwCE/gUNTAQ4FCRxOFeBQmMChmQCHogQOzQU4FCNwaCHAoQSBw2kCHEoROLQU4FCGwOF0AQ7lCBzSBDhUIHA4Q4BDJQKHVgIcqhA4tBbgUJXAoY0Ah2oEDmcKcKhO4NBWgEMNAoezBDjUInBoJ8ChNoFDewEOdQgcOghwqEvg0FGAQ30Ch04CHBoQOJwtwKEhgUNnAQ6NCBzOEeDQmMChiwCHJgQO5wpwaErg0FWAQzMCh24CHFoQOHQX4NCSwKGHAIc0AoeeAhxaETj0EuDQhsChtwCHtgQOfQQ4tCNw6CvAoQOBQz8BDp0IHPoLcOhM4DBAgEMXAoeBAhy6EjgMEuDQncBhsACHngQOQwQ49CZwGCrAoS+BwzABDv0JHIYLcBhI4DBCgMNgAofzBDgMJXAYKcBhOIHDKAEO5xE4jBbgMIrAYYwAhzEEDmMFOIwjcBgnwGECgcN4Cw4pJnqYWJH+//cqet77Jj4w8aGJj0x8bOITE5+a2GjiMxObTHxuYrOJL0xsMfGlia9MfG1iq4lvTGwzsd3Etya+M7HDxPcmdpr4wcQuEz+a2G3iJxN7TPxsYq+JX0zsM4H56TE3O+Ylx5zcmI8aczFjHmLMwYv5ZzH3KuYdxZybmG8Scy1inkHMsYf55TC3GuYVw5xamE8KcylhHiHMoYP5YzB3CuYNwZwZmC8CcyVgngB45MMfHt7o8AWHJzb8oOGFDB/gQx64JuB9Ct9PeF7C7xFeh/D5g8cd/N3gbQZfL3hawc8JXkbw8YGHDfxb4F0C3w54VsCvAV4FGKePMeoYn42xyRiXizGpGI+JsYgYh4cxaBh/hbFHGHeDMScYb4GxBuhnjz7m6F+NvsXoV4s+pehPib6E6EeHPmToP4W+Q+g3gz4j6C+BvgJ4To5nxHg+imeDeC6GZ0J4HoJnAWgHRxsw2j/R9od2L7T5oL0D9/q4z8U9Hu5vcG2P61pc0+F6Br/l+B3DORznLxy7qLfxVy7LOt/U/LOx/OH16w1qP35L/RW1Hu2Y9vCMGd1612ywvfXU9WPnt9yyd+GP6eu+W9E+z7sVk88xwfJ81CPB576XXLnCb/ykNvNi71QknPMq2eWw3H9ufJdflrf+LlNt6stE3nf598uW88RKOZ9jkgCHfHlyPsdkAQ5NCN4h5wtwaErgMEWAQzMCh6kCHFoQOFwgwKElgcOFAhzSCBwuEuDQisBhmgCHNgQOFwtwaEvgMF2AQzsCh0sEOHQgcJghwKETgcOlAhw6EzjMFODQhcDhMgEOm/LmfI5ZAhy6EerD5QIcehA4XCHAoReBw5UCHPoQOMwW4NCPwOEqAQ4DCBzmCHAYROBwtQCHIQQOcwU4DCNwuEaAwwgCh2sFOIwkcJgnwGE0gcN8AQ5jCRwWCHAYT+CwUOG5P4HDIgEOkwkcrhPgMIXAYbEAhwsIHK4X4FAlNedzLBHgMI1QH24Q4DCdwGGpAIcZBA43CnCYSeCwTIDDLAKHmwQ4XEHgcLMAh9kEDssFOMwhcFghwGEugcNKAQ6vp+R8jlsEOMwj1IdVAhwWEDjcKsBhEYHDagEOiwkcbhPgsITAYY0Ah6UEDrcLcFhG4HCHAIcNhH5idwpwWE6oD2sFOKwkcLhLgMMqAod1AhxWEzjcLcBhDYHDPQIc7iBwuFeAw1oCh/sEOKwjcLhfgMM9BA4PCHC4j8DhQQEODxA4PCTA4SECh4cFODxC4PCIAIf1BA6PCnB4nMBhvUL7A4HDYwIcniJweFyAwzMEDk8IcHiOwGGDAIcXCByeFODwEoHDUwIcXiFweFqAw2sEDs8IcHiDwOFZAQ5vETg8J8DhHQKH5wU4vEfg8IIAhw8IHF4U4PARgcNLAhw+IXB4WYDDRgKHVxR8cggcXhXgsJnA4TUBDlsIHF4X4PAVgcMbAhy2Eji8KcBhG4HDWwIcviVweFuAww4Ch3cEOOwkcHhXgMMuAof3BDjsJnB4X4DDHgKHDwQ47CVw+FCAwz4Ch48EOOwncPhYgMPvBA6fCHA4QODwqQCHgwQOGwU4xAhzEn4mwCGFwGGTAIfcBA6fC3DIS+CwWYBDfgKHLwQ4FCRw2CLAoTCBw5cCHIoSOHwlwKEYgcPXAhxKEDhsFeBQisDhGwEOZQgctglwKEfgsF2AQwUCh28FOFQicPhOwZeVwGGHAIeqBA7fC3CoRuCwU4BDdQKHHwQ41CBw2CXAoRaBw48CHGoTOOwW4FCHwOEnAQ51CRz2CHCoT+DwswCHBgQOewU4NCRw+EWAQyMCh30CHBoTOPwqwKEJgcN+AQ5NCRx+E+DQjMDhdwEOLQgc/hDg0JLA4YAAhzQChz8FOLQicDgowKENgYNXOfoc2hI4xAQ4tCNwyCXAoQOBQ4oAh04EDqkCHDoTOOQW4NCFwCGPAIeuBA55BTh0J3DIJ8ChJ4FDfgEOvQkcCghw6EvgUFCAQ38Ch0ICHAYSOBQW4DCYwKGIAIehBA5FBTgMJ3A4QoDDeQQOxQQ4jCJwKC7AYQyBQwkBDuMIHEoKcJhA4FDKgkOKiZ4mVqT/f7Jp6z7fxBQTU01cYOJCExeZmGbiYhPTTVxiYoaJS03MNHGZiVkmLjdxhYkrTcw2cZWJOSauNjHXxDUmrjUxz8R8EwtMLDSxyMR1JhabuN7EEhM3mFhqAvPTY252zEuOObkxHzXmYsY8xJiDF/PPYu5VzDuKOTcx3yTmWsQ8g5hjD/PLYW41zCuGObUwnxTmUsI8QphDB/PHYO4UzBuCOTMwXwTmSsA8AfDIhz88vNHhCw5PbPhBwwsZPsDwwIX/K7xP4fsJz0v4PcLrED5/8LiDvxu8zeDrBU8r+DnBywg+PvCwgX8LvEvg2wHPCvg1wKsA4/QxRh3jszE2GeNyMSYV4zExFhHj8DAGDeOvMPYI424w5gTjLTDWAP3s0ccc/avRtxj9atGnFP0p0ZcQ/ejQhwz9p9B3CP1m0GcE/SXQVwDPyfGMGM9H8WwQz8XwTAjPQ/AsAO3gaANG+yfa/tDuhTYftHfgXh/3ubjHw/0Nru1xXYtrOlzP4Lccv2M4h+P8hWMX9Tb+ymVZ5zeWN2zKH16/3qD247fUX1Hr0Y5pD8+Y0a13zQbbW09dP3Z+yy17F/5olmP9SZXs82CbZHOUtjwf9Uzwue8lV67wGz+pzbzYxEo5fz6y4eCyf3yXX5Z3qzPxdbP6LstYaED5U9L/xrfL5vf7j31bbBfLlyfnc5Tl1fPDSe22izUh+GiUE+DQlMChvACHZgQOFQQ4tCBwqCjAoSWBQyUBDmkEDpUFOLQicKgiwKENgYMvwKEtgUNVAQ7tCByOFODQgcChmgCHTgQORwlw6EzgUF2AQxcCh6MFOGzKm/M5aghw6EaoDzUFOPQgcKglwKEXgcMxAhz6EDjUFuDQj8DhWAEOAwgc6ghwGETgcJwAhyEEDnUFOAwjcKgnwGEEgUN9AQ4jCRyOF+AwmsChgQCHsQQOJwhwGE/g0FCAw0QChxMFOEwmcGgkwGEKgcNJAhwuIHBoLMChSmrO5zhZgMM0Qn1oIsBhOoHDKQIcZhA4NBXgMJPA4VQBDrMIHJoJcLiCwKG5AIfZBA4tBDjMIXA4TYDDXAKHlgIcXk/J+RynC3CYR6gPaQIcFhA4nCHAYRGBQysBDosJHFoLcFhC4NBGgMNSAoczBTgsI3BoK8BhA6Gf2FkCHJYT6kM7AQ4rCRzaC3BYReDQQYDDagKHjgIc1hA4dBLgcAeBw9kCHNYSOHQW4LCOwOEcAQ73EDh0EeBwH4HDuQIcHiBw6CrA4SECh24CHB4hcOguwGE9gUMPAQ6PEzj0VGh/IHDoJcDhKQKH3gIcniFw6CPA4TkCh74CHF4gcOgnwOElAof+AhxeIXAYIMDhNQKHgQIc3iBwGCTA4S0Ch8ECHN4hcBgiwOE9AoehAhw+IHAYJsDhIwKH4QIcPiFwGCHAYSOBw3kKPjkEDiMFOGwmcBglwGELgcNoAQ5fETiMEeCwlcBhrACHbQQO4wQ4fEvgMF6Aww4ChwkCHHYSOEwU4LCLwGGSAIfdBA6TBTjsIXA4X4DDXgKHKQIc9hE4TBXgsJ/A4QIBDr8TOFwowOEAgcNFAhwOEjhME+AQI8zPd7EAhxQCh+kCHHITOFwiwCEvgcMMAQ75CRwuFeBQkMBhpgCHwgQOlwlwKErgMEuAQzECh8sFOJQgcLhCgEMpAocrBTiUIXCYLcChHIHDVQIcKhA4zBHgUInA4WoFX1YCh7kCHKoSOFwjwKEagcO1AhyqEzjME+BQg8BhvgCHWgQOCwQ41CZwWCjAoQ6BwyIBDnUJHK4T4FCfwGGxAIcGBA7XC3BoSOCwRIBDIwKHGwQ4NCZwWCrAoQmBw40CHJoSOCwT4NCMwOEmAQ4tCBxuFuDQksBhuQCHNAKHFQIcWhE4rBTg0IbA4RYBDm0JHFYJcGhH4HCrAIcOBA6rBTh0InC4TYBDZwKHNQIcuhA43C7AoSuBwx0CHLoTONwpwKEngcNaAQ69CRzuEuDQl8BhnQCH/gQOdwtwGEjgcI8Ah8EEDvcKcBhK4HCfAIfhBA73C3A4j8DhAQEOowgcHhTgMIbA4SEBDuMIHB4W4DCBwOGRynY5clnuf2N5z/uyfPLrb0pfP6yj3qD247fUX1Hr0Y5pD8+Y0a13zQbbW09dP3Z+yy17F/5olj9qqcOWU3PzzyemXCmW5Wpuse4n5ZNfd33yemN//+Mlv02L9Bye3XZeqokCJnIn2qllGZp59vXfJc+pHidPUy/nj7XPLI+1z8sf/sD37F+2DOpWtDvvxl+PpdfFxysfzmmd3OKgObTvlPS/j6Vvh8pdJFQwly9pi+WXtMXySzp48OCviT73vazz4Z+gvifSwW+o7P0TyhPp30Twsw0BwLZfThyM7Zm/S/WcPfNvcizXuZblir9Sk8+zwOSJPVE5+TJtsPjVsOAaS1ZrvGLassSB+4TDrxFetgfo8LKet9jiAB1t1p/vUD+erJzzOq630DHGUcdTBB1LLHSMddTxNEHHDRY6xjnqeIagY6mFjvGOOp4l6LjRQscERx3PEXQss9Ax0VHH8wQdN1nomOSo4wWCjpstdEx21PEiQcdyCx3nO+p4iaBjhYWOKY46XiboWGmhY6qjjlcIOm6x0HGBo45XCTpWWei40FHHawQdt1rouMhRx+sEHastdExz1PEGQcdtFjoudtTxJkHHGgsd0x11vEXQcbuFjkscdbxN0HGHhY4ZjjreIei400LHpY463iXoWGuhY6ajjvcIOu6y0HGZo473CTrWWeiY5ajjA4KOuy10XO6o40OCjnssdFzhqOMjgo57LXRc6ajjY4KO+yx0zHbU8QlBx/0WOq5y1PEpQccDFjrmOOrYSNDxoIWOqx11fEbQ8ZCFjrmOOjYRdDxsoeMaRx2fE3Q8YqHjWkcdmwk6HrXQMc9RxxcEHestdMx31LGFoOMxCx0LHHV8SdDxuIWOhY46viLoeMJCxyJHHV8TdGyw0HGdo46tBB1PWuhY7KjjG4KOpyx0XO+oYxtBx9MWOpY46thO0PGMhY4bHHV8S9DxrIWOpY46viPoeM5Cx42OOnYQdDxvoWOZo47vCTpesNBxk6OOnQQdL1rouNlRxw8EHS9Z6FjuqGMXQcfLFjpWOOr4kaDjFQsdKx117CboeNVCxy2OOn4i6HjNQscqRx17CDpet9Bxq6OOnwk63rDQsdpRx16CjjctdNzmqOMXgo63LHSscdSxj6DjbQsdtzvq+JWg4x0LHXc46thP0PGuhY47HXX8RtDxnoWOtY46fifoeN9Cx12OOv4g6PjAQsc6Rx0HLHRgXFIv769RmHhhzAXGK6CvP/rJo485+mejbzP6BaNPLfqjoi8n+kGiDyH636HvGvp9oc8U+huhrw76uaCPCPpXoG8CnuvjmTieJ+NZLJ5j4hkgnp/h2ROe2+CZB54XoK0d7dRo40X7KNoW0S6HNi20B6EtBe0QuIfH/S/uHXHfhXsWXO/jWhnXmbhGw/UNrg3wu4rfJJzPcS7EeQTHIOovvvsDlRPzsWH/Z/Ls81mMH8p3bg6P4cL4IZTdtq4dTF7voeOlV4LPfc/uZavNpoyuObwqdsdcb+//jrnwMWd7PsV3FBywmswYOXxPtnmC321WOWJV7I6H3gk+970kyxV64ye1Ged4sOEQfNmeb3NV+c/Pt7G///Hszrcou+35NoVXvw4X1m67WEqVnM+RKsAhX56cz5FbgEOTfDmfI48Ah6YEDnkFODQjcMgnwKEFgUN+AQ4tCRwKCHBII3AoKMChFYFDIQEObQgcCgtwaEvgUESAQzsCh6ICHDoQOBwhwKETgUMxAQ6dCRyKC3DoQuBQQoDDprw5n6OkAIduhPpQSoBDDwKH0gIcehE4lBHg0IfAoawAh34EDuUEOAwgcCgvwGEQgUMFAQ5DCBwqCnAYRuBQSYDDCAKHygIcRhI4VBHgMJrAwRfgMJbAoaoAh/EEDkcKcJhI4FBNgMNkAoejBDhMIXCoLsDhAgKHowU4VEnN+Rw1BDhMI9SHmgIcphM41BLgMIPA4RgBDjMJHGoLcJhF4HCsAIcrCBzqCHCYTeBwnACHOQQOdQU4zCVwqCfA4fWUnM9RX4DDPEJ9OF6AwwIChwYCHBYROJwgwGExgUNDAQ5LCBxOFOCwlMChkQCHZQQOJwlw2EDoJ9ZYgMNyQn04WYDDSgKHJgIcVhE4nCLAYTWBQ1MBDmsIHE4V4HAHgUMzAQ5rCRyaC3BYR+DQQoDDPQQOpwlwuI/AoaUAhwcIHE639Nvp4x3224FnAvwCMFYe48QxRhrjgzE2FuNCMSYS4wExFg7jwDAGCuN/MPYF4z4w5gH9/dHXHf280ccZ/XvRtxX9OtGnEf35DvVlM4E+TOi/g74r6LeBPgt4Xo9n1XhOi2eUeD6HZ1N4LoNnEmiPR1s02mHRBon2N7Q9od0FbQ6438a9Ju6zcI+B62tcW+K6CtcU+D3FbwnOoziH4PhB3QG3+MvWB6eZZ++3A58O2zxBb4+scqRZHg99Enzue8mVK/zGT2ozjh9KmkMOvGz9ds5IPk9O+e0cqk62fFAXUfbwdlnpbcWrX4cLa7ddrBWhfrUW4MDw22kjwIHht3OmAAeG305bAQ4Mv52zBDgw/HbaCXBg+O20F+DA8NvpoHD9QODQUYADw2+nkwAHht/O2QIcGH47nQU4MPx2zhHgwPDb6SLAgeG3c64AB4bfTlcBDgy/nW4CHBh+O90FODD8dnoIcGD47fQU4MDw2+klwIHht9NbgAPDb6ePAAeG305fAQ4Mv51+AhwYfjv9BTgw/HYGCHBg+O0MFODA8NsZJMCB4bczWIADw29niAAHht/OUAEODL+dYQIcGH47wwU4MPx2RghwYPjtnCfAgeG3M1KAA8NvZ5QAB4bfzmgBDgy/nTECHBh+O2MFODD8dsYJcGD47YwX4MDw25kgwIHhtzNRgAPDb2eSAAeG385kAQ4Mv53zBTgw/HamCHBg+O1MFeDA8Nu5QIADw2/nQgEODL+diwQ4MPx2pglwYPjtXCzAgeG3M12AA8Nv5xIBDgy/nRkCHBh+O5cKcGD47cwU4MDw27lMgAPDb2eWAAeG387lAhwYfjtXCHBg+O1cacEBniJ9vcN+O/BMgF8AxspjnDjGSGN8MMbGYlwoxkRiPCDGwmEcGMZAYfwPxr5g3AfGPKC/P/q6o583+jijfy/6tqJfJ/o0oj8f+rKhHxf6MKH/DvquoN8G+izgeT2eVeM5LZ5R4vkcnk3huQyeSaA9Hm3RaIdFGyTa39D2hHYXtDngfhv3mrjPwj0Grq9xbYnrKlxT4PcUvyU4j+IcguMHdQfc4i9bH5xTPXu/Hfh02OYJentklWO25fHQN8HnvpdcucJv/KQ24/ihzHbIgZet385VyefJKb+dQ0W25YO6iLKHt8tK7xxe/TpcWLvtYnMI9etqAQ4Mv525AhwYfjvXCHBg+O1cK8CB4bczT4ADw29nvgAHht/OAgEODL+dhQIcGH47iwQ4MPx2rhPgwPDbWSzAgeG3c70AB4bfzhIBDgy/nRsEODD8dpYKcGD47dwowIHht7NMgAPDb+cmAQ4Mv52bBTgw/HaWC3Bg+O2sEODA8NtZKcCB4bdziwAHht/OKgEODL+dWwU4MPx2VgtwYPjt3CbAgeG3s0aAA8Nv53YBDgy/nTsEODD8du4U4MDw21krwIHht3OXAAeG3846AQ4Mv527BTgw/HbuEeDA8Nu5V4ADw2/nPgEODL+d+wU4MPx2HhDgwPDbeVCAA8Nv5yEBDgy/nYcV+hUTODwiwIHht/OoAAeG3856AQ4Mv53HBDgw/HYeF+DA8Nt5QoADw29ngwAHht/OkwIcGH47TwlwYPjtPC3AgeG384wAB4bfzrMCHBh+O88JcGD47TwvwIHht/OCAAeG386LAhwYfjsvCXBg+O28LMCB4bfzigAHht/OqwIcGH47rwlwYPjtvG7BAQYd/bzDfjvwTIBfAMbKY5w4xkhjfDDGxmJcKMZEYjwgxsJhHBjGQGH8D8a+YNwHxjygvz/6uqOfN/o4o38v+raiXyf6NKI/H/qyoR8X+jCh/w76rqDfBvos4Hk9nlXjOS2eUeL5HJ5N4bkMnkmgPR5t0WiHRRsk2t/Q9oR2F7Q54H4b95q4z8I9Bq6vcW2J6ypcU+D3FL8lOI/iHILjB3UH3OIvWx+cuhXt/Xbg02GbJ+jtkVWONyyPh34JPve95MoVfuMntRnHD+UNhxx42frtvJl8npzy20nFP7Z8UBdR9vB2Wel9i1e/DhfWbrvYW4T69bYAB4bfzjsCHBh+O+8KcGD47bwnwIHht/O+AAeG384HAhwYfjsfCnBg+O18JMCB4bfzsQAHht/OJwIcGH47nwpwYPjtbBTgwPDb+UyAA8NvZ5MAB4bfzucCHBh+O5sFODD8dr4Q4MDw29kiwIHht/OlAAeG385XAhwYfjtfC3Bg+O1sFeDA8Nv5RoADw29nmwAHht/OdgEODL+dbwU4MPx2vhPgwPDb2SHAgeG3870AB4bfzk4BDgy/nR8EODD8dnYJcGD47fwowIHht7NbgAPDb+cnAQ4Mv509AhwYfjs/C3Bg+O3sFeDA8Nv5RYADw29nnwAHht/OrwIcGH47+wU4MPx2fhPgwPDb+V2AA8Nv5w8BDgy/nQMCHBh+O38KcGD47RwU4MDw28GKSa77n3Fg+O3E/OhzYPjt5PKjz4Hht5PiR58Dw28n1Y8+B4bfTm4/+hwYfjt5/OhzYPjt5PWjz4Hht5PPjz4Hht9Ofj/6HBh+OwX86HNg+O0U9KPPgeG3U8iPPgeG305hP/ocGH47Rfzoc2D47RT1o8+B4bdzhJ98DtNM6PX3DvvtwDMBfgEYK49x4hgjjfHBGBuLcaEYE4nxgBgLh3FgGAOF8T8Y+4JxHxjzgP7+6OuOft7o44z+vejbin6d6NOI/nzoy4Z+XOjDhP476LuCfhvos4Dn9XhWjee0eEaJ53N4NoXnMngmgfZ4tEWjHRZtkGh/Q9sTRMdM4H4b95q4z8I9Bq6vcW2J6ypcU+D3FL8lOI/iHILjB3UH3OIvWx+cpp69387bDn47b1v47RTz7Y6H/gk+973kyhV+4ye1GccPxYZD8JUSypMV7+LJ58kpv53c+MeWD+oiyh7eLiu9JXxa/TpcWLvtYjZldM1R0o8+B4bfTik/+hwYfjul/ehzYPjtlPGjz4Hht1PWjz4Hht9OOT/6HBh+O+X96HNg+O1U8KPPgeG3U9GPPgeG304lP/ocGH47lf3oc2D47VTxo8+B4bfj+9HnwPDbqepHnwPDb+dIP/ocGH471fzoc2D47RzlR58Dw2+nuh99Dgy/naP96HNg+O3U8KPPgeG3U9OPPgeG304tP/ocGH47x/jR58Dw26ntR58Dw2/nWD/6HBh+O3X86HNg+O0c50efA8Nvp64ffQ4Mv516fvQ5MPx26vvR58Dw2znejz4Hht9OAz/6HBh+Oyf40efA8Ntp6EefA8Nv50Q/+hwYfjuN/OhzYPjtnORHnwPDb6exH30ODL+dk/3oc2D47TTxo8+B4bdzih99Dgy/naZ+9Dkw/HZO9aPPgeG308yPPgeG305zP/ocGH47Lfzoc2D47ZzmR58Dw2+npR99Dgy/ndP96HNg+O2k+dHnwPDbOcOPPgeG304rP/ocGH47rf3oc2D47bTxo8+B4bdzph99Dgy/nbZ+9Dkw/HbO8qPPgeG3086PPgeG3057P/ocGH47Hfzoc2D47XT0o8+B4bfTyY8+B4bfztl+9Dkw/HY6+9HnwPDbOcdPPgc8RQZ4h/124JkAvwCMlcc4cYyRxvhgjI3FuFCMicR4wENj4UxUNYHxPxj7gnEfGPOA/v7o645+3ujjjP696NuKfp3o04j+fOjLhn5c6MOE/jvou4J+G+izgOf1eFaN57R4Ronnc3g2hecyeCaB9ni0RTc30cIE2t/Q9oR2F7Q54H4b95q4z8I9Bq6vcW2J6ypcU+D3FL8lOI/iHILjB3UH3OIvWx8ceJY8bum3A58O2zxBb4+scnTx7Y6HAQk+973kyhV+4ye1GccPxYZD8GXrt3Nu8nlyym8nD/6x5YO6iLKHt8tKb1efVr8OF9Zuu5hNGV1zdPPtctge8xvLe95n5ZNff5NZ9/Py9t9ndz/63yfDN6iHH30ODN+gnn70OTB8g3r50efA8A3q7UefA8M3qI8ffQ4M36C+fvQ5MHyD+vnR58DwDervR58DwzdogB99DgzfoIF+9DkwfIMG+dHnwPANGuxHnwPDN2iIH30ODN+goX70OTB8g4b50efA8A0a7kefA8M3aIQffQ4M36Dz/OhzYPgGjfSjz4HhGzTKjz4Hhm/QaD/6HBi+QWP86HNg+AaN9aPPgeEbNM6PPgeGb9B4P/ocGL5BE/zoc2D4Bk30o8+B4Rs0yY8+B4Zv0GQ/+hwYvkHn+9HnwPANmuJHnwPDN2iqH30ODN+gC/zoc2D4Bl3oR58DwzfoIj/6HBi+QdP86HNg+AZd7EefA8M3aLoffQ4M36BL/OhzYPgGzfCjz4HhG3SpH30ODN+gmX70OTB8gy7zo8+B4Rs0y48+B4Zv0OV+9DkwfIOu8KPPgeEbdKUffQ4M36DZfvQ5MHyDrvKjz4HhGzTHjz4Hhm/Q1X70OTB8g+b60efA8A26xo8+B4Zv0LV+9DkwfIPm+dHnwPANmu9HnwPDN2iBH30ODN+ghX70OTB8gxb50efA8A26zo8+B4Zv0GI/+hwYvkHX+9HnwPANWuJHnwPDN+gGP/kc8EYZ6B32DYJnAvwCMFYe48QxRhrjg/uZ6G8CYyIxHhBj4TAODGOgMP4HY18w7gNjHtDfH33d0c8bfZzRvxd9W9GvE30a0Z8PfdnQjwt9mNB/B31X0G8DfRbwvB7PqvGcFs8o8XzuEhMzTOCZBNrj0RaNdli0QaL9DW1PaHdBmwPut3Gvifss3GPg+hrXlriuwjUFfk/xW4LzKM4hOH5Qd8At/sqV/jf+UTI+QBb+IYe8WuDTEc6T1XbBHFmVaalvdzwMTPC57yVXrvAbP6nNOL4uNhyCL1vfoBuTz5NTvkF58Y8tH9RFlD28XVZ6l/m0+nW4sHbbxWzK6JrjJj/6HBh+Ozf70efA8NtZ7kefA8NvZ4UffQ4Mv52VfvQ5MPx2bvGjz4Hht7PKjz4Hht/OrX70OTD8dlb70efA8Nu5zY8+B4bfzho/+hwYfju3+9HnwPDbucOPPgeG386dfvQ5MPx21vrR58Dw27nLjz4Hht/OOj/6HBh+O3f70efA8Nu5x48+B4bfzr1+9Dkw/Hbu86PPgeG3c78ffQ4Mv50H/OhzYPjtPOhHnwPDb+chP/ocGH47D/vR58Dw23nEjz4Hht/Oo370OTD8dtb70efA8Nt5zI8+B4bfzuN+9Dkw/Hae8KPPgeG3s8GPPgeG386TfvQ5MPx2nvKjz4Hht/O0H30ODL+dZ/zoc2D47TzrR58Dw2/nOT/6HBh+O8/70efA8Nt5wY8+B4bfzot+9Dkw/HZe8qPPgeG387IffQ4Mv51X/OhzYPjtvOpHnwPDb+c1P/ocGH47r/vR58Dw23nDjz4Hht/Om370OTD8dt7yo8+B4bfzth99Dgy/nXf86HNg+O2860efA8Nv5z0/+hwYfjvv+9HnwPDb+cCPPgeG386HfvQ5MPx2PvKjz4Hht/OxH30ODL+dT/zoc2D47XzqR58Dw29nox99Dgy/nc/86HNg+O1s8pPPYZoJvUHeYb8deCbAL2CFiZUmMEYa44MxNhbjQjEmEuMBMRYO48AwBgrjfzD2BeM+MOYB/f3R1x39vNHHGf170bcV/TrRpxH9+dCXDf240IcJ/XfQdwX9NtBnAc/rnzbxjAk8o8TzOTybwnMZPJNAezzaotEOizZItL+h7QntLmhzwP027jVxn4V7DFxf49oS11W4psDvKX5LcB7FOQTHD+oOuMVftj448Cx5rPLh9ZPx54FPh22eoLdHVjk+9+2Oh0EJPve95MoVfuMntRnHD8WGQ/CVEsqTFe/NyeeJWfjtxCz8dmJ//+PZ1V2UPbxdVnq/8JPnin2npP9NtJ2Lv1Wy627x7eux59l//1/6//n3/9cG3j/LndXq8XOXyzkvvm5WbL7y3epKcDvb8m0sb+p1eYvfzfT1bY+Dr32778dFxxeWOr5w0LHVp/1eHC6s3XYU36hv/OhzYPhGbfOjz4HhG7Xdjz4Hhm/Ut370OTB8o77zo8+B4Ru1w48+B4Zv1Pd+9DkwfKN2+tHnwPCN+sGPPgeGb9QuP/ocGL5RP/rR58DwjdrtR58DwzfqJz/6HBi+UXv86HNg+Eb97EefA8M3aq8ffQ4M36hf/OhzYPhG7fOjz4HhG/WrH30ODN+o/X70OTB8o37zo8+B4Rv1ux99DgzfqD/86HNg+EYd8KPPgeEb9acffQ4M36iDfvQ5MHyjvKrR58DwjYoJcGD4RuUS4MDwjUoR4MDwjUoV4MDwjcotwIHhG5VHgAPDNyqvAAeGb1Q+AQ4M36j8AhwYvlEFBDgwfKMKCnBg+EYVEuDA8I0qLMCB4RtVRIADwzeqqAAHhm/UEQIcGL5RxQQ4MHyjigtwYPhGlRDgwPCNKinAgeEbVUqAA8M3qrQAB4ZvVBkBDgzfqLICHBi+UeUEODB8o8oLcGD4RlUQ4MDwjaoowIHhG1VJgAPDN6qyAAeGb1QVAQ4M3yhfgAPDN6qqAAeGb9SRAhwYvlHVBDgwfKOOEuDA8I2qXtUuh+3+4Rfyhf+/22XlS7Ezh/1Ptvh/ebfYetAcnTyvmK2GcFmy2j88QspUTn59eIQ8Wtn+u6hR1b4eHkpomadm1nlyBfddyERq4P/oJ4O/LdP/D9+QWPp+4+vVMu+PMVHbxLHpnxf0Dpc1s/Jn8YrVqup+vFonS/Ny9gDBgQsjHtsvcXcOH7jd/b/MnWzL9VN1+y8HL1tDqDoWJwgLVrGfctgQDPUJZbflepxFpce+4yZPibazPRmnWaxbt6odv/jL9vuv999//4deLsZeFqZWh35Asb5tfalfNed1WJhaHdKB9W11HJ/DF04oFy42bI+JBhG6QMF3YXHxcEhzDYdz0AkOP7x42bINrpuVljM8TpliXvJlauVxypTLS75MrT1OmVK85MvUxvt3ypRVnjO95MtfLtWtTLbnnbZe9s4JyfxmB38Dkvndrl/VXsdZXs7rON5Sx/EOOtp5nLrY3kteSyVSXezgcfJ09Dh5OnmcPGd7nDydPU6eczxOni4eJ8+5HidPV4+Tp5vHydPd4+Tp4XHy9PQ4eXp5nDy9PU6ePh4nT1+Pk6efx8nT3+PkGeBx8gz0OHkGeZw8gz1OniEeJ89Qj5NnmMfJM9zj5BnhcfKc53HyjPQ4eUZ5nDyjPU6eMR4nz1iPk2ecx8kz3uPkmeBx8kz0OHkmeZw8kz1OnvM9Tp4pHifPVI+T5wKPk+dCj5PnIo+TZ5rHyXOxx8kz3ePkucTj5JnhcfJc6nHyzPQ4eS7zOHlmeZw8l3ucPFd4nDxXepw8sz1Onqs8Tp45HifP1R4nz1yPk+caj5PnWo+TZ57HyTPf4+RZ4HHyLPQ4eRZ5nDzXeZw8iz1Onus9Tp4lHifPDR4nz1KPk+dGj5NnmcfJc5PHyXOzx8mz3OPkWeFx8qz0OHlu8Th5VnmcPLd6nDyrPU6e2zxOnjUeJ8/tHifPHR4nz50eJ89aj5PnLo+TZ53HyXO3x8lzj8fJc6/HyXOfx8lzv8fJ84DHyfOgx8nzkMfJ87DHyfOIx8nzqMfJs97j5HnM4+R53OPkecLj5NngcfI86XHyPOVx8jztcfI843HyPOtx8jzncfI873HyvOBx8rzocfK85HHyvOxx8rzicfK86nHyvOZx8rzucfK84XHyvOlx8rzlcfK87XHyvONx8rzrcfK853HyvO9x8nzgcfJ86HHyfORx8nzscfJ84nHyfOpx8mz0OHk+8zh5NnmcPJ97nDybPU6eLzxOni0eJ8+XHifPVx4nz9ceJ89Wj5PnG4+TZ5vHybPd4+T51uPk+c7j5NnhcfJ873Hy7PQ4eX7wOHl2eZw8P3qcPLs9Tp6fPE6ePR4nz88eJ89ej5PnF4+TZ5/HyfOrx8mz3+Pk+c3j5Pnd4+T5w+PkOeBx8vzpcfIc9Dh5sEGS64Y2tMsTI+XJRcqTQsqTSsqTm5QnDylPXlKefKQ8+Ul5CpDyFCTlKUTKU5iUpwgpT1FSniNIeYqR8hQn5SlBylOSlKcUKU9pUp4ypDxlSXnKkfKUJ+WpQMpTkZSnEilPZVKeKqQ8PilPVVKeIy3zhPefjPcuJtuwLVc1kv6jCPrrOeivTtJ/NClPDVKemqQ8tUh5jiHlqU3KcywpTx1SnuNIeeqS8tQj5alPynM8KU8DUp4TSHkakvKcSMrTiJTnJFKexqQ8J5PyNCHlOYWUpykpz6mkPM1IeZqT8rQg5TmNlKclKc/ppDxppDxnkPK0IuVpTcrThpTnTFKetqQ8Z5HytCPlaU/K04GUpyMpTydSnrMd82Rnfs+sytTZsky2ZcFcht/4ya//ZOXE89RmpeMcgo5tFjqectTRhaBju4WOpx11nEvQ8a2FjmccdXQl6PjOQsezjjq6EXTssNDxnKOO7gQd31voeN5RRw+Cjp0WOl5w1NGToOMHCx0vOuroRdCxy0LHS446ehN0/Gih42VHHX0IOnZb6HjFUUdfgo6fLHS86qijH0HHHgsdrznq6E/Q8bOFjtcddQwg6NhroeMNRx0DCTp+sdDxpqOOQQQd+yx0vOWoYzBBx68WOt521DGEoGO/hY53HHUMJej4zULHu446hhF0/G6h4z1HHcMJOv6w0PG+o44RBB0HLHR84KjjPIKOPy10fOioYyRBx0ELHR856hhF0OFVTX79jx11jCboiFno+MRRxxiCjlwWOj511DGWoCPFQsdGRx3jCDpSLXR85qhjPEFHbgsdmxx1TCDoyGOh43NHHRMJOvJa6NjsqGMSQUc+Cx1fOOqYTNCR30LHFkcd5xN0FLDQ8aWjjikEHQUtdHzlqGMqQUchCx1fO+q4gKCjsIWOrY46LiToKGKh4xtHHRcRdBS10LHNUcc0go4jLHRsd9RxMUFHMQsd3zrqmE7QUdxCx3eOOi4h6ChhoWOHo44ZBB0lLXR876jjUoKOUhY6djrqmEnQUdpCxw+OOi4j6ChjoWOXo45ZBB1lLXT86KjjcoKOchY6djvquIKgo7yFjp8cdVxJ0FHBQsceRx2zCToqWuj42VHHVQQdlSx07HXUMYego7KFjl8cdVxN0FHFQsc+Rx1zCTp8Cx2/Ouq4hqCjqoWO/Y46riXoONJCx2+OOuYRdFSz0PG7o475BB1HWej4w1HHAoKO6hY6DjjqWJjDOjAWpYGFjrpV/1rfVseiHNaxsby5bq+c/PqbzPrflLfXcR1BRzlLHdscdCwm6ChvqWO7g47rCToqWOr41kHHEoKOipY6vnPQcQNBRyVLHTscdCwl6KhsqeN7Bx03EnRUsdSx00HHMoIO31LHDw46biLoqGqpY5eDjpsJOo601PGjg47lBB3VLHXsdtCxgqDjKEsdPznoWEnQUd1Sxx4HHbcQdBxtqeNnBx2rCDpqWOrY66DjVoKOmpY6fnHQsZqgo5aljn0OOm4j6DjGUsevDjrWEHTUttSx30HH7QQdx1rq+M1Bxx0EHXUsdfzuoONOgo7jLHX84aBjLUFHXUsdBxx03EXQUc9Sx58OOtYRdNS31HHQQcfdBB3HW+rwKtjruIego4GljpiDjnsJOk6w1JHLQcd9BB0NLXWkOOi4n6DjREsdqQ46HiDoaGSpI7eDjgcJOk6y1JHHQcdDBB2NLXXkddDxMEHHyZY68jnoeISgo4mljvwOOh4l6DjFUkcBBx3rCTqaWuoo6KDjMYKOUy11FHLQ8ThBRzNLHYUddDxB0NHcUkcRBx0bCDpaWOoo6qDjSYKO0yx1HOGg4ymCjpaWOoo56HiaoON0Sx3FHXQ8Q9CRZqmjhIOOZwk6zrDUUdJBx3MEHa0sdZRy0PE8QUdrSx2lHXS8QNDRxlJHGQcdLxJ0nGmpo6yDjpcIOtpa6ijnoONlgo6zLHWUd9DxCkFHO0sdFRx0vErQ0d5SR0UHHa8RdHSw1FHJQcfrBB0dLXVUdtDxBkFHJ0sdVRx0vEnQcbalDt9Bx1sEHZ0tdVR10PE2Qcc5ljqOdNDxDkFHF0sd1Rx0vEvQca6ljqMcdLxH0NHVUkd1Bx3vE3R0s9RxtIOODwg6ulvqqOGg40OCjh6WOmo66PiIoKOnpY5aDjo+JujoZanjGAcdnxB09LbUUdtBx6cEHX0sdRzroGMjQUdfSx11HHR8RtDRz1LHcQ46NhF09LfUUddBx+cEHQMsddRz0LGZoGOgpY76Djq+IOgYZKnjeAcdWwg6BlvqaOCg40uCjiGWOk5w0PEVQcdQSx0NHXR8TdAxzFLHiQ46thJ0DLfU0chBxzcEHSMsdZzkoGMbQcd5ljoaO+jYTtAx0lLHyQ46viXoGGWpo4mDju8IOkZb6jjFQccOgo4xljqaOuj4nqBjrKWOUx107CToGGepo5mDjh8IOsZb6mjuoGMXQccESx0tHHT8SNAx0VLHaQ46dhN0TLLU0dJBx08EHZMtdZzuoGNPLOd1nG+pI81Bx88EHVMsdZzhoGMvQcdUSx2tHHT8QtBxgaWO1g469hF0XGipo42Djl8JOi6y1HGmg479BB3TLHW0ddDxG0HHxZY6znLQ8TtBx3RLHe0cdPxB0HGJpY72DjoOEHTMsNTRwUHHnwQdl1rq6Oig4yBBx0xLHZ0cdKBgSa7rrOMySx1nO+iIEXTMstTR2UFHLoKOyy11nOOgI4Wg4wpLHV0cdKQSdFxpqeNcBx25CTpmW+ro6qAjD0HHVZY6ujnoyEvQMcdSR3cHHfkIOq621NHDQUd+go65ljp6OugoQNBxjaWOXg46ChJ0XGupo7eDjkIEHfMsdfRx0FGYoGO+pY6+DjqKEHQssNTRz0FHUYKOhZY6+jvoOIKgY5GljgEOOooRdFxnqWOgg47iBB2LLXUMctBRgqDjeksdgx10lCToWGKpY4iDjlIEHTdY6hjqoKM0QcdSSx3DHHSUIei40VLHcAcdZQk6llnqGOGgoxxBx02WOs5z0FGeoONmSx0jHXRUIOhYbqljlIOOigQdKyx1jHbQUYmgY6WljjEOOioTdNxiqWOsg44qBB2rLHWMc9DhE3TcaqljvIOOqgQdqy11THDQcSRBx22WOiY66KhG0LHGUsckBx1HEXTcbqljsoOO6gQdd1jqON9Bx9EEHXda6pjioKMGQcdaSx1THXTUJOi4y1LHBQ46ahF0rLPUcaGDjmMIOu621HGRg47aBB33WOqY5qDjWIKOey11XOygow5Bx32WOqY76DiOoON+Sx2XOOioS9DxgKWOGQ466hF0PGip41IHHfUJOh6y1DHTQcfxBB0PW+q4zEFHA4KORyx1zHLQcUIO68A87idUTX59zOOO9W11NLTU8feGlnlOJOVpRMpzEilPY1Kek0l5mpDynELK05SU51RSnmakPM1JeVqQ8pxGytOSlOd0Up40Up4zSHlakfK0JuVpQ8pzJilPW1Kes0h52pHytCfl6UDK05GUpxMpz9mkPJ1Jec4h5elCynMuKU9XUp5upDzdSXl6kPL0JOXpRcrTm5SnDylPX1KefqQ8/Ul5BpDyDCTlGUTKM5iUZwgpz1BSnmGkPMNJeUaQ8pxHyjOSlGcUKc9oUp4xpDxjSXnGkfKMJ+WZQMozkZRnEinPZFKe80l5ppDyTCXluYCU50JSnotIeaaR8lxMyjOdlOcSUp4ZpDyXkvLMJOW5jJRnFinP5aQ8V5DyXEnKM5uU5ypSnjmkPFeT8swl5bmGlOdaUp55pDzzSXkWkPIsJOVZRMpzHSnPYlKe60l5lpDy3EDKs5SU50ZSnmWkPDeR8txMyrOclGcFKc9KUp5bSHlWkfLcSsqzmpTnNlKeNaQ8t5Py3EHKcycpz1pSnrtIedaR8txNynMPKc+9pDz3kfLcT8rzACnPg6Q8D5HyPEzK8wgpz6OkPOtJeR4j5XmclOcJUp4NpDxPkvI8RcrzNCnPM6Q8z5LyPEfK8zwpzwukPC+S8rxEyvMyKc8rpDyvkvK8RsrzOinPG6Q8b5LyvEXK8zYpzzukPO+S8rxHyvM+Kc8HpDwfkvJ8RMrzMSnPJ6Q8n5LybCTl+YyUZxMpz+ekPJtJeb4g5dlCyvMlKc9XpDxfk/JsJeX5hpRnGynPdlKeb0l5viPl2UHK8z0pz05Snh9IeXaR8vxIyrOblOcnUp49pDw/k/LsJeX5hZRnHynPr6Q8+0l5fiPl+Z2U5w9SngOkPH+S8hwk5fFSOHlipDy5SHlSSHlSSXlyk/LkIeXJS8qTj5QnPylPAVKegqQ8hUh5CpPyFCHlKUrKcwQpTzFSnuKkPCVIeUqS8pQi5SlNylOGlKcsKU85Up7ypDwVSHkqkvJUIuWpTMpThZTHJ+WpSspzJClPNVKeo0h5qpPyHE3KU4OUpyYpTy1SnmNIeWqT8hxLylOHlOc4Up66pDz1SHnqk/IcT8rTgJTnBFKehqQ8J5LyNCLlOYmUpzEpz8mkPE1IeU4h5WlKynMqKU8zUp7mpDwtSHlOI+VpScpzOilPGinPGaQ8rUh5WpPytCHlOZOUpy0pz1mkPO1IedqT8nQg5elIytOJlOdsUp7OpDznkPJ0IeU5l5SnKylPN1Ke7qQ8PUh5epLy9CLl6U3K04eUpy8pTz9Snv6kPANIeQaS8gwi5RlMyjOElGcoKc8wUp7hpDwjSHnOI+UZScozipRnNCnPGFKesaQ840h5xpPyTCDlmUjKM4mUZzIpz/mkPFNIeaaS8lxAynMhKc9FpDzTSHkuJuWZTspzCSnPDFKeS0l5ZpLyXEbKM4uU53JSnitIea4k5ZlNynMVKc8cUp6rSXnmkvJcQ8pzLSnPPFKe+aQ8C0h5FpLyLCLluY6UZzEpz/WkPEtIeW4g5VlKynMjKc8yUp6bSHluJuVZTsqzgpRnJSnPLaQ8q0h5biXlWU3KcxspzxrHPLlCeeoNaj9+S/0VtR7tmPbwjBndetdssL311PVj57fcsnfhj2b5UV7yZbrdsky2ZUkzcVzV5Neva9atV9We7R2k7/BOUp61pLqS6iVfprtIZcrtJV+mdaQy5fGSL9PdpDLl9ZIv0z2kMuXzki/TvaQy5feSL9N9pDIV8JIv0/2kMhX0ki/TA6QyFfKSL9ODpDIV9pIv00OkMhXxki/Tw6QyFfWSL9MjpDId4SVfpkdJZSrmJV+m9aQyFfeSL9NjpDKV8JIv0+OkMpX0ki/TE6QylfKSL9MGUplKe8mX6UlSmcp4yZfpKVKZynrJl+lpUpnKecmX6RlSmcp7yZfpWVKZKnjJl+k5UpkqesmX6XlSmSp5yZfpBVKZKnvJl+lFUpmqeMmX6SVSmXwv+TK9TCpTVS/5Mr1CKtORXvJlepVUpmpe8mV6zaJMKellQT8SvM4w0cpEaxNtTJxpoq2Js0y0M9HeRAcTHU10MnG2ic4mzjHRxcS5Jrqa6Gaiu4keJnqa6GWit4k+Jvqa6Geiv4kBJgaaGGRisIkhJoaaGGZiuIkRJs4zMdLEKBOjTYwxMdbEOBPjTUwwMdHEJBOTTZxvYoqJqSYuMHGhiYtMTDNxsYnpJi4xMcPEpSZmmrjMxCxwMHGFiStNzDZxlYk5Jq42MdfENSauNTHPxHwTC0wsNLHIxHUmFpu43sQSEzeYWGriRhPLTNxk4mYTy02sMLHSxC0mVpm41cRqE7eZWGPidhN3mLjTxFoTd5lYZ+JuE/eYuNfEfSbuN/GAiQdNPGTiYROPmHjUxHoTj5l43MQTJjaYeNLEUyaeNvGMiWdNPGfieRMvmHjRxEsmXjbxiolXTbxm4nUTb5h408RbJt428Y6Jd028Z+J9Ex+Y+NDERyY+NvGJiU9NbDTxmYlNJj43sdnEFya2mPjSxFcmvjax1cQ3JraZ2G7iWxPfmdhh4nsTO038YGKXCRwTu038ZGKPiZ9N7DXxi4l9Jn41sd/EbyZ+N/GHiQMm/jRx0AQadWMmcplIMZFqIreJPCbymshnIr+JAiYKmihkorCJIiaKmjjCRDETxU2UMFHSRCkTpU2UMVHWRDkT5U1UMFHRRCUTlU1UMeGbqGriSBPVTBxlorqJo03UMFHTRC0Tx5iobeJYE3VMHGeirol6JuqbON5EAxMnmGho4kQTjUycZKKxiZNNNDFxiommJk410cxEcxMtTJxmoqWJ002kmTjDRCsTrU20MXGmibYmzjLRzkR7Ex1MdDTRycTZJjqbOMdEFxPnmuhqopuJ7iZ6mOhpopeJ3ib6mOhrop+J/iYGmBhoYpCJwSaGmBhqYpiJ4SZGmDjPxEgTo0yMNjHGxFgT40yMNzHBxEQTk0xMNnG+iSkmppq4wMSFJi4yMc3ExSamm7jExAwTl5qYaeIyE7NMXG7iChNXmpht4ioTc0xcbWKuiWtMXGtinon5JhaYWGhikYnrTCw2cb2JJSZuMLHUxI0mlpm4ycTNJpabWGFipYlbTKwycauJ1SZuM7HGxO0m7jBxp4m1Ju4ysc7E3SbuMXGviftM3G/iARMPmnjIxMMmHjHxqIn1Jh4z8biJJ0xsMPGkiadMPG3iGRPPmnjOxPMmXjDxoomXTLxs4hUTr5p4zcTrJt4w8aaJt0y8beIdE++aeM/E+yY+MPGhiY9MfGziExOfmtho4jMTm0x8bmKziS9MbDHxpYmvTHxtYquJb0xsM7HdxLcmvjOxw8T3Jnaa+MHELhM/mtht4icTe0z8bGKviV9M7DPxq4n9Jn4z8buJP0wcMPGniYMm8KMXM5HLRIqJVBO5TeQxkddEPhP5TRQwUdBEIROFTRQxUdTEESaKmShuooSJkiZKmShtooyJsibKmShvooKJiiYqmahsogrmIjBR1cSRJqqZOMpEdRNHm6hhoqaJWiaOMVHbxLEm6pg4zkRdE/VM1DdxvIkGJk4w0dDEiSYamTjJRGMTJ5toYuIUE01NnGqimYnmJlqYOM1ESxOnm0gzcYaJViZam2hj4kwTbU2cZaKdifYmOpjoaKKTibNNdDZxjokuJs410dVENxPdTfQw0dNELxO9TfQx0ddEPxP9TQwwMdDEIBODTQwxMdTEMBPDTYwwcZ6JkSZGmRhtYoyJsSbGmRhvYoKJiSYmmZhs4nwTU0xMNXGBiQtNXGRimomLTUw3cYmJGSYuNTHTxGUmZpm43MQVJq40MdvEVSbmmLjaxFwT15i41sQ8E/NNLDCx0MQiE9eZWGziehNLTNxgYqmJG00sM3GTiZtNLDexwsRKE7eYWGXiVhOrTdxmYo2J203cYeJOE2tN3GVinYm7Tdxj4l4T95m438QDJh408ZCJh008YuJRE+tNPGYCc9Nj3njM6Y751jEXOuYpxxzimN8bc29jXmzMWY35pDHXM+ZhxhzJmL8Ycwtj3l/MyYv5cjGXLeaZxRywmJ8Vc6diXlPMOYr5QDFXJ+bRxByXmH8Sc0Ni3kbMqYj5DjEXIeYJxBx+mF8Pc99hXjrMGYf53DDXGuZBwxxlmD8Mc3th3i3MiYX5qjCXFOZ5whxMmB8JcxdhXiHM+YP5eDBXDuaxwRwzmP8Fc7Ng3hTMaYL5RjAXCC58MYcG5rfA3BOYFwJzNmA+Bcx1gHkIMEcA/PvhrQ/fe3jSwy8eXu7wWYcHOvzJ4R0OX294bsMPG17V8JGGxzP8l+GNDN9ieArD7/eQF68JeNjCXxber/BlhWcq/EzhNQofUHh0wj8T3pbwnYQnJPwa4aUIn0N4EMIfEN598NWD5x386OAVBx83eKzB/wzeZPANg6cX/LbghQWfKnhIwd8J3kvwRYJnEfyE4PUDHx545MC/Bt4y8H2BJwv8UuBlAp8ReIDAnwPeGfC1gOcE/CDg1QAfBXgcwH8A3gAYt48x9RjvjrHoGCeOMdwYX42xzxiXjDHDGM+LsbYYB4sxqhg/irGdGHeJMZEYr4ixhBjnhzF4GB+HsWsYV4YxXxiPhbFSGMeEMUYY/4OxORg3gzEtGG+CsSAYp4ExFBjfgLEHGBeAPvu4D0Jfd/RDRx9x9N9G32r0e0afZPQXRl9e9LNFH1j0T0XfUfTrRJ9L9IdEX0X0I0QfP/S/Q9849FtDnzL090JfLPSTQh8m9C9C3x/0y0GfGfRnQV8T9O1Avwj0WUB/Ajy/x/NyPJ/G82A8f8XzTjxfxPM8PD/D8yo8H8LzGDz/wPMGtO+jPR3t12gvRvss2kPR/oj2PrSvoT0L7Udor0H7CNojcP+P+23c3+J+EocM7g3jr/Sf0EP3j+iHgOf+eM6O59p4jozntnhOiueSeA6I5254zoXnSniOg+cmeE6B5wJoh0e7N9qZ0a6LdlS0W6KdEO1yaAdDuxPaeeLtKlW9v+7Tq3l/9ZmpbuJoEzVM1DRRy8QxJmqbONZEHRPHmahrop6J+iaON9HAxAkmGpo40UQjEyeZaGziZBNNTJxioqmJU000M9HcRAsTp5loaeJ076++MuHXWYH356T/nTf0xdd+3pH37eB652aybHv63yp50j48u/ZzG4PLcE4/tOzqh3Kldcz3dXDZs+nL+uRbvuG0dwuuCy57PpNlL2ey7NVMlr2fybIPMln2aSbLPstk2eeZLNucybKvM1n2TSbLvstk2feZLNuTybKfM1m2P5Nlv2ey7EAmy/7MZBl+AzNaljuTZfkzWVYwk2XFM1lWIpNlZTNZVj6TZRUzWVYpk2VHZrLsqEyW1cxk2TGZLGuXvizR8V4tdyZlyWRZrUyW1c5k2enpyxKdl87IZFmvTJYNTF/2wzUFLvt8x6fXBpcNzWS78zNZdln6skuO7lb45GMbPhBcNih/xvlG5c94uxEFM843OpNlT2Sy7JWCGefLWzTj7e4smrGGB4pmvM/txTLe5/eZLDu5eMbLWhXPON+sUhlvV7N0xhrql854n0PKZrzPEZksezSTZS+UzThfSsWMt7utYsYa7qmY8T6/rpzxPrdnsqxhlcTL0r/yQ9c5ePWfMGHw+Il9B44ZNbb/xOEDRg7uO2Z8/4Hmz+TB4ycMHzO67/nj+48dO3h8OuZD12d4pf8cHLqWw2nH95J6xfIFtrPf/pLT84V3aLW9d2j7mOea/y/98etXl+3zxAsS2D5Ylvh+cS1cMPC+cCi/Y/lPz275i2dS5vh30zKwvu8l9cqN633oPCL9A2g/Kv39pInDRw6fOLXFoara8u+a2uFQRT33r3oa3mEs9P+WGXxeIFDu1MA6yTOZcnp8nylxMYH3wVdq6G98nfRTn5c/kD/+N5l+2p++sPfDB888flSx0PZ4xb8b6CyR/n7C4Il9JwwePWjw+L5DxozvO7H/0AkRObzTsnl4p2WzesfyBbZx2D7h4R0uC16FvH8eRsFt8qYvj7//lw79tJw89BMdvmXS348dP3xy/4mDOw+e2PlQpTtjzPhzTJUL7z4Weh9L8Hk8VTaP2DSVIzaOc6g5YvtPmjis7/nDJ44ePGHCwfQN/uPDdVE2D9dFUTlczwhsn+zhGt8mOBoD748KbINXq7/+/GP7+LLWgWW5QsvaBJalhJadGViWGlrWNrAsd2jZWYFleULL2gWW5Q0tax9Yli+0rENgWf7Qso6BZQVCyzoFlhUMLTs7sKxQ4D0ifgWLV0r6Z4UDnwWvRrDsiMD2FnWjc3z7Ym7bNy8UKKMXKnt8WfD8dURoWe7AsngZ8L28H/vnegsD6xVJf58vlM+y7K2yya5d8QT5jwiUDa/gFVks+X3/vf3pgc98L7lXfNu0QG4LXSnxn7nNge8geHzG9xnPFTw+LXO1T/T7lxL6LLj//F62zoWxWGh/8XxhffHjC8ds/Hcw/Qq91eCJLcyvVNe/fqSChQzuOHiiCS4PvsLrhNcLr5/oBB3L4G9cWPiz8InD8Ys7VOnDZU0NlTO397/ljOfN45a3cLIVJr7//KGyuFaYPKF8YX1hrnnd8hWKhbYP5gvuM/jDFvzBCrMN/mDlyWBfwQvN4PqnpP8tGloPr/Ctfb4E5Q1+FucDZo1CZQ+yda3PRb3/1R7/fvJ52aoDhbL5nbaLbx++EPWT2vzwBWB+t/yxOOfgRV/8WAWT4A9F8CImfsMQ3jbOMTW0/obY4e3iF31FQuskqrs59f2Hz0cFE+SJsw1egFmwTU32fBTff/5QWVzPR4VC+cL6ghfaWFY4QVmKhpbhFT6uCyfIk+hClLWvQt7/6s9unQl+9wVDeTI6ZnoFPg9ul+iYwSt+jKWG1r8tcMz0Tf+siPe/dSR8g5CIZXD9/KF9BbcPt7UE64ZFXcwVL0vRLMpSOFSWIoFlwYtnxBGZ7AuvtNC+El18e97/fifhcsbrU64E+wnmS/Rd5HEsc3z9+I1OHi8xr/j+UkPrx9t/8Tu0Nb3eJDrvBW+ysjrvOd78JH3ei+//3zrvZcU6fN4rlqAsRUPL8Aqfq4olyFMsQR7Wvgp5iet4or/xPOHPwnmC332y573pgc+zc967NnDeuzT9s0TH2hGhfIlYZnbeC25fLLSv4lnsK3zeCm5fPLSvEpnsC6/weSu4fXDbROetYDnD563iCbYL5snsvJVsmePrl0z/f0bnrfj+UkPrz0v/m9V5K759MuetEoHPc+K8Fd//v3Xeyop1+LxVMkFZioaW4RU+15RMkKdkgjysfRXyEtfxRH/jecKfhfMEv/tkz1srA59n57w1JXDeujX9s0THWolQvkQsMztvBbcvGdpXqSz2FT5vBbcvFdpX6Uz2hVf4vBXcPrhtovNWsJzh81apBNsF82R23kq2zPH148/oMjpvxfeXGlr//vS/WZ234tsnc94qHfg8J85b8f3/W+etrFiHz1tlEpSlaGgZXuFzTZkEecokyMPaVyEvcR1P9DeeJ/xZOE/wu0/2vPVc4PPsnLf6B85bL6Z/lqhtpnQoX6LvP7h++LxVMJN9lcliX+HzVnD7Mhb7wit83iqcYF9eaLvcoXXxCp+3CifYLpgnUTuXbZnj66f3wvvHeatAAh2pofXfT/+b1XmrTKjs4fIG3xdIUPZEba2ZnXOD6xcIlT2+/qeZlD2WYPscfNbQItlz7n/9rKGAW77mmX23mbXXlkmwLLt1dnv633/z/A5mX4XKHvFnDc2z+j34IfB5+Nxl01Z/ZuD3YHf6Z/9lW334eC7wL+YJ6gk/EyiTIE/8Oywb+Dwnzhvx/ef3/ve4cjlvlA3ly+i4iOsr55aveSy0fTBfcJ/x8sRZl0+wLL6vCun/z5PBvuLbpobWzx36jSgfKFPLUI7yCcob/Cx43oh/UYW8/2Wb3foY1B7/frI67gvE/qkluCyZ4z6+fp3AcR9/mF4kwfbxMhYJbR/PH3yf6PcqNUFZwuesPBmsnydU9vj6JdITB68NMuMRPL/kzYBH6cA+t4f2mTuBrpTAZ7lCuhI9s8+dQFcipnlD+0pJsK+gnvxe4rJmdL2VEtIfX79SAqaJrrcy6iQY8w4/Wwo/m8P7wqFlwevn8L1jkGeR0LLgM6PwOTyjDmbBcse8f3ZMC383xULLguyKh5YFv6twm2XwGX/J0LLgd1YqtCz4GxW+N0x0T1XAS1yPwnUs+JsSzBE8vwaPmeD64XNIfP3jMzlmEp1jg52twsdMhQTrB38nwvcowd+ECl7WuYN68meQO08G62f0m9M4k2MmUf+DRNch5TMpZ7lQOROdI8tkoTV8vk5UV4K/z/H9hLfPXid0rwUY7YgdzhPUh1f4tyHRdxhc37b+hH97g3WmTGhZ8Hc5/B0k6jAYLEuwU3B4WaLf8UTX2rHQ+zJZ5Axvm+jeK1cCveF7rw4J6nMslCOjc0T4dzW+/tmZnCMSXadm9rua6Doz0TVUIqblQssS3bsmqv/x9XKi/gf1h+t/ZlrxCrPJ7HhJVP+Dx0aB0LLguSt8fZ6ojSDZ+h+sQ/H712Ta+bOq/wVD67vW/yGZ1P9E7a2Z/UbG1x9uWf+DfLNb/4NcMqv/wecW8X2H95nN+p8a5fpfMLQs2N4crv8FE+RJtv4H69Bz6e+Tqf8ls8gZrv/xa8qM6n98f6mh9adZ1v/g88SM6v8lmdT/RM8vM6v/iZ5BlEqgK7NnEImehQav3eP7Du8zJ+p/UH+4/memFa8wm0TnyGA9zuhZV6L6H3zmHH5O/G/V/5Xp75Op/8WyyBmu//H7tIzqf3x/qaH1F1nW/2A/oIzq//WZ1P9E/Y4yq/+J+o4UT6Ars34IifowhQdjpSTYZ07U/6D+cP3PTCteYTaJzpHBepxRH5VE9T/YVyzcv+vfqv/x/nPJ1P/CWeQM1/94G0lG9T++v9TQ+mst63+wDSej+n93JvU/njeoK7P6n6h/cZEEuhIxLRpalqgffKL6H+wjHdcXX5bd+h/UH67/mWnFK8wmUX/YYF/mZPp8JuoHXySU59+q//F+88nc/2aVM7xtvPwZ1f/4/lJD6z+bSf1PdP8brF8Z3f++kEn9TzR2I7P730TngURjFhIxzezYyOz+N75eNut/4UT1P6g/XP8z04pXmE2ic0miNuai3v/W68zuf8PjLf6t+9+0wOd4hZ8ZBP/Gt4nvF698CdYPji2Kv4Lfl+f9s79FSoJ95Q1tF1//8/QdBH9bvND2RRPkD7L0Mih3ovGBsQT7SknwWfBZ3Uexw2XOpmlG/FLw75y5vX9+H15o/2HTjK9j/yxr8Jz2b5pmuO7/7bw7fn7txaHzcmr/X+frmJbroaurZLX/RPUpJbRNsE6mJFg/V2B5cP1d6Ts41LchcO6JfxbOh8/+zGS9WAZ/E5U5WJ7M6nJKgvXjuQskWD++LPibGDx3BtcJ8gruK39geXD9A6FjPHhcBs+R4fzh8ayJyp3RdV14XykJPgse47+EjivXPlbBute3Lyxnxk0aM3H44NETO6d/+h/bzbTJpt1Mm2zaxeTKrjNAIruZRE+WErkZnBFaFuzZ2ir9L47yIoH3waezeAXtZoK/PuFfZQtNrbPJNFY8g/zxsuHVMrCBn8GOrp8xYv6wca/OPcW/uvTHFx1oZWMTEp5AKWwTksm2sfAHcYuQM9P/H34SH9wo2bNmuHeS4xH+99Vcoh4omfUWtS1n0QTljIXyxP7FPMHtwqyyc64KX/labJ8n7IzgWeRO1EMjeMY/MvA5Il9gWUqCbcO9huLrVw9sF+4Vni+Uwwv8P+iaEVwXr5ahXPF1awVy1c1gf16C/cXLlei7zp9JmXNnkCOWYN28oRy5E2wXLLdNvkSM4uekMKNWgVwNvOTKH9xfZuVP5nstkEmOlqEcsQTbeaHt4vUuLZN1C2Syblhz/P/5EuQK7ivMNc4HXJqmv0/EIzWDfHilJFg/fMedqPdevgR6wi0ip6X/RT2MW6YlOlcH62KwroSP3VgCTQW8xN9rovNFuPdZcFnwXBM/D2XzzrJNLFCW+L5t7iw7pP9Vv7OM6zJX3xPjT2r/42vuVtm85m4VlWvu00Pbe6H9ZubImuiaO37Mha+5gz0p8Qpe68f3nc1rkzNy8po7fv0aHpUcbGVIdO7DK1EP2OB+s3meaJXd80RwVEE8f/zvv3meiNeHQYPhqz5mwuC+w4aPnpju1v7/myM6u1fWjrX3X/NYzuyoDV6FxELLEpnFZlNTWjbPcrmKexmf2eJHdLz2J/rFD9aljMZNhI+0RPsI7ifMJvg9+Ol/S9T3PqqyueHU2qVPHNNh8mWbz1l3cclVtbYVLfvDpFMm7/9sTFhLrkzKXiiTMmTW9zQKZ6ZK6X9z+swU1zly4l/npKrp//+/q4xsHX//d5Xxv6+krjKCfdSDnOLjzRMdy/8zTimwTYkM9pfHy/rckJJBOYJX4uF94OV7Sb0SturEEuSJ+lWUn/43p89V8eulQYMHTBrad+SYoX37jx/ff2p8gpr0iWm6pK/1H5/B+mTzDNYnm2eg8tltG050BkvUTpwSWi+8TbC2BtvP0zJYJzgx5BkZrNMqsE6rDNZpHVindQbrtAms0yaDdc4MrHNmBuu0DazTNoN1zgqsc1YG67QLrNMug3XaB9Zpn8E6HQLrdMhgnY6BdTpmsE6nwDqdMljn7MA6Z2ewTufAOp0zWOecwDrnZLBOl8A6XTJY59zAOudmsE7XwDpdM1inW2Cdbhms0z2wTvcM1ukRWKdHBuv0DKzTM4N1egXWCTuqZnYVkc1f/bRsnkfKZva8K5vPVMqFf3k975+/pl5o//m9bJ1TM3UdSTRyM1FvsfCyRCNSwz0rgvxxldQ0sF74uw2ORgxfXVho7Z3N7z2Wg997LsXvPSW07N/43hNdoWK91oH38d+1RFerLtcjjueRTGeLigXKG3+lhP7i9V/38Itfa0S5h19z73CZ43dVHQI5/o3jIJHbQ64Myp/RcZOSYH30aIrzS59C5HRc7J81ZqgXeoVPK7HQ+3gRw2YkqRkULZbJfoP7D34e3ndKgnWD+/4Xbtb6xPflerMWv7TK6Zu1+IQYo8dMHD5kal9MMThq+Oi+4wdPHjz+r3lFJwwfNLjv4CFDBg/EdKOTRk8cPD50KxceWPkf3cr9PzMJYVa3clieVSN64cD78OxTbvw5ExXG6zNOQcelv0+fqLD9oSrcefDEdsNHn/13/e1sqm/aodrb8q/KG86a6IyR6PMULxpzGAbtUOP543//zTPDsenv088Mg0ePmzR40uBBfcdOGjBy+MC+QyaNHjgREw0P7D9yZPxMEG8W/I/PBK2zeSZonc2L6tRsXjgnPBMksl3KqjEmxcu6MQYv1+bt8AVuMH+iG4tgh9fg3HjxDq/ZPAO1ZpyB4sOIcQaqkf7+H2egtPQjpeOhA+WM9OOkpTlMwukyujgKpw5KCf4/NcF+wq/wD1JcSjZPY62zexqLuxawWqMPnabSv6fDJ6/h+EUY3X9kvIfgf3ziapvNE1fbbJ54cod7v/4bJ65EnnVZtTQnc+IKrpNRKzJe7JNboh7ZwTv9UoH3Yb+ScOt2cFmwVftf6r/QhtF/oVZAR7A+xNf3vGzPMZgSPN7+/jD0WXD/+b1sHSd/32GHW0LC+oJ3zPEzXvpJCD8IHf96G/+NCJY0uPdcCZTE/lmif7QteBmsZ/ObEv9/7gT7zWj78Gfhb9ftrHiYdjBXmHZw/4ncP1NC2yVq6w2eVRKVN5w7UV+6+LrZ1Pz3TGSpCfJmpjnRkWjbwya+j3/hOqFtdq8T4jd5OX2dEL+US7/dGTh+sDkwB/UdPWnkyOFDhv9Pm0f8xP1/bR7Z+gH61zoFFgq8D08G6HgIUtoz4uYV+IGIdyb7x91Ey78qYvt4PQwnCZ/fYwk+jyf8r5su4lc+OX0sx28nBw0fb9p9hk8e3HfimL7j+w8aPiXsAeTa6yI8Usb1sHe93smT4MPgtUi410e4lgRzxsviOBdv3P4z4VOh8AgxL8E6ie5ec4X+nxr6PCWJdcP5gssSPf0Jb5fV05zw00AvwfrBKyC8cmewr/CTrHD9yO53VDxBznjZ4qegw0fL8NFoPQ2P2irllvvvul7SbXsvUV0P+seFfe2C9cH37F7BM1v4FfZmCD8RDP+UW+SPZVSORHU4/l0GfcLiPOL3GMHvcuLgoebyJe4JEC6t40wrueLbO87GlfBbDY4xLBhOmP430dkilsH/c4X+ZrZuLJP9JjrC4/uMfxvB8sZ1/H98eGRcSoYeAA==",
1909
- "debug_symbols": "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VUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS11wjGsg10pJcIy3JNdKSXCMtyTXSklwjLck10pJcIy3JNdKSXEVakVakFWlFWpFWpBVpRVqR1qQ1aU1ak9akNWlNWpPWpI20JPdIS3KPtCT3SEtyj7Qk90hLco+0JPdIS3KPtCT3SEty30hbpC3SFmmLtEXaIm2RtkhbpC3SNmmbtE3aJm2TtknbpG3SNmmbNCPNSDPSjDQjzUgz0ow0I81Ic9KcNCfNSXPSnDQnzUlz0py0IC1IC9KCtCAtSAvSgrQgLUgTaSJNpIk0kSbSRJpIE2kiDZZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWGKwxGCJwRKDJQZLDJYYLDFYYrDEYInBEoMlBksMlhgsMVhisMRgicESgyUGSwyWGCwxWGKwxGCJwRKDJQZLDJYYLDFYYrDkOez6KJ3yTFtnKcpzcP52lkXZUz4G5x/lotyURnmN6afNRThpcxFO2lyEkzYX4aTNRThpcxFO2lyEkzYX4aTNRThpQVqQFqQFaUFakCbSRJpIE2kiTaSJNJEm0kRakpakJWlJWpKWpCVpSVqSlqQVaUVakVakFWlFWpFWpBVpRVqT1qQ1aU1ak9akNWlNWpM2F+Gkz0U46XMRTvpchJM+F+Gkz0U46XMRTvpchJM+F+Gkz0U46TfSFmmLtEXaIm2RtkhbpC3SFmmLtE3aJm2TtknbpG3SNmmbtE3aJs1IM9KMNCPNSDPSjDQjzUgz0pw0J81Jc9JgicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEuQvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWfc692lklZlD3l43ucR3l+1+FnuSmN8vxmJc4y+FtRJmVR9pSP73EeJWmbtE3a43ucR0naJm2TtknbpBlpRpqRZqQZaUaakWakGWlGmpPmpDlpTpqT5qQ5aU6ak+akBWlBWpAWpAVpQVqQFqQFaUGaSBNpIk2kiTSRJtJEmkgTaUlakpakJWlJWpKWpCVpSVrSAUUHFGknS/x2lkZ5pPnjHxxprrMUZVIWZU95suRZLsozLc/SKJ3yTMv//uUP/++Pf/vzH//lL3/6v3/4H/91/+P//s+//ut//Pnf/vr843/8f/9+/Z9/+duf//KXP/+ff/73v/3bv/7pf/3n3/70z3/5t389/t8fbsd/jsb/n0u/7PVP93+8fvtX+/lP/+f9JPEv9/Oq//TLH+z4k+qX+1ns+5/Of34/i/3L/ZT08cd1/LHi/sc8ft5myfRfsq9/Ubdfah//34nsX7YffxXzV/cHYffxV+Kv8hc7fzCPvzruitYvua47cr8fdS5SrJu/7PMnmkXWL1vnAbMJvn7xx9/9Zhf++7//6b//fw==",
1909
+ "debug_symbols": "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CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvArJq5C8CsmrkLwKyauQvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymmtEA7lGWpJrpCW5RlqSa6QluUZakmukJblGWpJrpCW5RlqSq0gr0oq0Iq1IK9KKtCKtSCvSmrQmrUlr0pq0Jq1Ja9KatJGW5B5pSe6RluQeaUnukZbkHmlJ7pGW5B5pSe6RluQeaUnuG2mLtEXaIm2RtkhbpC3SFmmLtEXaJm2TtknbpG3SNmmbtE3aJm2TZqQZaUaakWakGWlGmpFmpBlpTpqT5qQ5aU6ak+akOWlOmpMWpAVpQVqQFqQFaUFakBakBWkiTaSJNJEm0kSaSBNpIk2kwZINSzYs2bBkw5INSzYs2bBkw5INSzYs2bBkw5INSzYs2bBkw5INSzYs2bBkw5INSzYs2bBkw5INSzYs2bBkw5INSwyWGCwxWGKwxGCJwRKDJQZLDJYYLDFYYrDEYInBEoMlBksMlhgsMVhisMRgicESgyUGSwyWGCwxWGKwxGCJwRKDJQZLDJY8h10fpVOeaessRXkOzt/Osih7ysfg/KNclJvSKK8x/bS5CCdtLsJJm4tw0uYinLS5CCdtLsJJm4tw0uYinLS5CCctSAvSgrQgLUgL0kSaSBNpIk2kiTSRJtJEmkhL0pK0JC1JS9KStCQtSUvSkrQirUgr0oq0Iq1IK9KKtCKtSGvSmrQmrUlr0pq0Jq1Ja9LmIpz0uQgnfS7CSZ+LcNLnIpz0uQgnfS7CSZ+LcNLnIpz0uQgn/UbaIm2RtkhbpC3SFmmLtEXaIm2RtknbpG3SNmmbtE3aJm2TtknbpBlpRpqRZqQZaUaakWakGWlGmpPmpDlpThoscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYIlgiWCJYAmS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvCaS10TymkheE8lrInlNJK+J5DWRvOZz7tXOMimLsqd8fI/zKM/vOvwsN6VRnt+sxFkGfyvKpCzKnvLxPc6jJG2Ttkl7fI/zKEnbpG3SNmmbNCPNSDPSjDQjzUgz0ow0I81Ic9KcNCfNSXPSnDQnzUlz0py0IC1IC9KCtCAtSAvSgrQgLUgTaSJNpIk0kSbSRJpIE2kiLUlL0pK0JC1JS9KStCQtSUs6oOiAIu1kid/O0iiPNH/8gyPNdZaiTMqi7ClPljzLRXmm5VkapVOeafnfv/zh//3xb3/+47/85U//9w//47/uf/zf//nXf/2PP//bX59//I//79+v//Mvf/vzX/7y5//zz//+t3/71z/9r//825/++S//9q/H//vD7fjP0fj/c+mXvf7p/o/Xb/9qP//p/7yfJP7lfl71n375gx1/Uv1yP4t9/9P5z+9nsX+5n5I+/riOP1bc/5jHz9ssmf5L9vUv6vZL7eP/O5H9y/bjr2L+6v4g7D7+SvxV/mLnD+bxV8dd0fol13VH7vejzkWKdfOXff5Es8j6Zes8YDbB1y/++Lvf7MJ///c//ff/Dw==",
1910
1910
  "verification_key": "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"
1911
1911
  },
1912
1912
  {
@@ -3724,7 +3724,7 @@
3724
3724
  }
3725
3725
  },
3726
3726
  "bytecode": "H4sIAAAAAAAA/+19B5gUxfN2z4U9cs5BliQ5B8UESAYRFBUDwROOoJIPBAOCooBKNqFiQkVUVERUJChIUJAkImACc8CsKKDoVyUz0tv07nb1btf6+/7O87zM0dM9b3VXV/U7u7Mznji61fX3fftmX52b06/v0JF9Bw/NzRk5NPvKUX37jskZOXjAuL7DRw4ek52b0zd7dO6gqwbnzs0SYmqeo+08QLq/TwOElbJgL/9dVFOvOKCVUlYKMEEpK60pq6A5X0VN2QmaskqasrCGo7KmrIqmrKqmrJp/zgxhsHn+PuzvG/Y/e+RHjR6s9VL3di9MnHhh75pNvuw4btnwWW0+OjDnBzj+VPqxunG2uonwLDLnSag/T8fnSZPPXUAcG1j8P44H7qv7/1/k/x/PG9R7Bv5+FrAY8Fy6/uRhYda94oS+LTEdQ++cCfIEwnatRGJ2VhPmdj5v7mtPtjNolyGOBf1xDYh2E2yJ4FuqZqCl/kRA4/KI1Br3QnoChC+k09u9mG7ufVu7XpQiKSzMNyrXUp8rXWkXr19LCWNAGa+XCNHyzz9Eu3X9NRkn07qU/i5Ld+tfnEtL0+nj9HKSVqh41dMJNiUz2VDqynzLbZNN0Ji61CwnTLwVjhMT/rPCImGuIEymf4OTVybi5JUWA7SS6LgIQmHedpW5I+rbnB+3FRaTnMLxCpN2fjU+T6Z8blU7r/LnwSv+vpxf/qqknVfD32sArwHWKtqZukKVJ9RdTZhv6yzHm2p/dULdNQT71xNlperHdb7/1vv71/z9WsmPG+Dv1wFvADb65WkiOUlsA8H+QtLfm3wHvOnvN/v7Lf5+q7/f5u+3+/u3/P0Of/+2v9/p79/x+9/K59kF/98N2AN4F/Ae4H3AB4APAXsB+wAfAT4GfAL4FPAZ4HPAF4AvAV8BvgbsB3wD+BbwHeB7wA+AHwE/AX4G/AI4APgV8BvgIOAQ4DDgd8AfgCOAPwF/od3gEA+QBkgHZAAyASFAFiAPIC8gHyA/oACgIKAQoDCgCKAooBigOKAEoCSglD8BSgcXacH10eb04z+p2aYp26Epe0dThoOcRynbrSnboyl7V1P2nqbsfU3ZB5qyDzVlezVl+zRlH2nKPtaUfaIp+1RT9pmm7HNN2Reasi81ZV9pyr7WlO3XlH2jKftWU/adpux7TdkPmrIfNWU/acp+1pT9oik7oCn7VVP2m6bsoKbskKbssKbsd03ZH5qyI5qyPzVlf2nKMOjVMk9TlqYpS9eUZWjKMjVlIU1ZlqYsj6Ysr6Ysn6Ysv6asgKasoKaskKassKasiKasqKasmKasuKashKaspKaslF+GOTWvOCYk5M3z92FhtJEWUd0WTqBaWJhs3j998qQ2ZWAQygLKAcoDKgAqAk4AVAKEAZUBVQBVAdUA1QEnAmoAagJqAWoD6gDqAuoB6gMaABoCGgEaA5oAmgKaAZoDTlIXtTIaZ5XVlJXTlJXXlFXQlFXUlJ2gKaukKQtryipryqpoyqpqyqppyqpryk7UlNXQlNXUlNXSlNXWlNXRlNXVlNXTlNXXlDXQlDXUlDXSlDXWlDXRlDXVlDXTlDXXlJ3kl8lbZX8fFkZbRNDHu0rAuW1S9/u//vLKGtcVXjnTumBvebO6s8Fer4JR3V+wb15Fk7r7/h4H7wSDumceHTOvUvy6M/3x9cJx6w4LfOFVjlf3pX/85lWJU3fsMR97VWPX7SDNB69azLpfyHPHqx6rbuOIeeadGKNujcg56dWIXreXMn+9mlHr9lTnulcrWt0Jx8WFVztK3QnHx5BXR193qSbevLraum11senV09Xtpo1jr76m7ov6mPcaHF+3ZpT84DU8ru4D0XKJ10it2zBq3vEaK3X3Rc9RXpPIuiNi5DOvaUTdrrFyn9dMrtsvZp70mkt1G8TOqd5JGeaiC7VGsj72Pck8l2+X+U7OSIAQG6sfe8YjP9l8gLwWhp2y/Wwf+4AcHrEPLYhOziekew5kAxReE3sN627TFYaFEU2Eraf4E+RUVRmf4g+cXHaqRsGkk8hJM9k7hTBBTiUOHtU5OClOIU4mtOuUFGWM5ubjPE/mO802YyDhafSMMe80QsY43XHGwD6cTs8Y805PUcZobs57n64wLIxoImw9w58gLdWMcYYmY7RMQsYgzGTvDMIEaWk5eJQJjjwUm1oRguGffwi2tPAnOPXbTMpS3ZoQDLo+xKuOY9TaIhO3TlEmbmY+f5fIfGfaZmIkPJOeiZecSZh8bRxnYuxDG3omXtImwclnEkCtHQdQW2Ifgo2amCg+bEeYG8lc4ZqZ8z6nKwwLI5oIW9v7gddBXeHaa1a4DklY4QgZwmtPcFoHy8GjTiSKTR0TXOHitcHgaWexOnRyvGphvzsx2BVsVB92Iviws2MfRkuyJsnZtG4XYkJLlhpoah7rM2S+s2zVABKeRVcDM84iDFBXx2oA+9CVrgZmdHWsBjAQumS4DbazicEWbFSbKD7sliI10NScd7quMCyMaCJs7e4H3jmqGuiuUQPnJEENEDKE153gtHMsB486kSg2net4JcHg6Wax6vZwrAaw3z0Y7Ao2qg97EHx4nmMfRkuy8dpRkuz5KfpsoIl5rIdlvgts1QASXkBXA+ELCE7u6VgNYB960tVAuKdjNYCBcH6G22C7kEkNUHx4UYrUQBNz3kq6wrAwoomw9WI/8C5R1cDFGjVwSRLUACFDeBcTnHaJ5eBRJxLFpl6OVxIMnossVt3ejtUA9rs3g13BRvVhb4IP+zj2YbQkG68dJcn2TZEaaGwe69tkvktt1QASXkpXA9suJTg527EawD5k09XAtmzHagADoW+G22C7jEkNUHzYL0VqoLE571ZdYVgY0UTY2t8PvBxVDfTXqIGcJKgBQobw+hOclmM5eNSJRLFpgOOVBIOnn8WqO9CxGsB+D2SwK9ioPhxI8OEgxz6MlmTjtaMk2cEpUgONzGM9W+a73FYNIOHldDWQfTnByVc4VgPYhyvoaiD7CsdqAANhcIbbYLuSSQ1QfDgkRWqgkTnvpbrCsDCiibB1qB94w1Q1MFSjBoYlQQ0QMoQ3lOC0YZaDR51IFJuGO15JMHiGWKy6IxyrAez3CAa7go3qwxEEH4507MNoSTZeO0qSHZUiNdDQPNZ3y3y5tmoACXPpamB3LsHJox2rAezDaLoa2D3asRrAQBiV4TbYxjCpAYoPr0qRGmhozrtLVxgWRjQRto71A2+cqgbGatTAuCSoAUKG8MYSnDbOcvCoE4li09WOVxIMnqssVt1rHKsB7Pc1DHYFG9WH1xB8eK1jH0ZLsvHaUZLsdSlSAw3MY72TzDfeVg0g4Xi6Gug0nuDk6x2rAezD9XQ10Ol6x2oAA+G6DLfBNoFJDVB8ODFFaqCBOW9HXWFYGNFE2HqDH3g3qmrgBo0auDEJaoCQIbwbCE670XLwqBOJYtMkxysJBs9Ei1X3JsdqAPt9E4NdwUb14U0EH97s2IfRkmy8dpQkOzlFaqC+eawvlvmm2KoBJJxCVwOLpxCcPNWxGsA+TKWrgcVTHasBDITJGW6D7RYmNUDx4a0pUgP1zXmf1RWGhRFNhK23+YE3TVUDt2nUwLQkqAFChvBuIzhtmuXgUScSxabpjlcSDJ5bLVbdGY7VAPZ7BoNdwUb14QyCD2c69mG0JBuvHSXJzkqRGqhnHusrZL7ZtmoACWfT1cCK2QQnz3GsBrAPc+hqYMUcx2oAA2FWhttgu51JDVB8eEeK1EA9c97lusKwMKKJsPVOP/DuUtXAnRo1cFcS1AAhQ3h3Epx2l+XgUScSxaa7Ha8kGDx3WKy6cx2rAez3XAa7go3qw7kEH97j2IfRkmy8dpQke2+K1EBd81jvIvPdZ6sGkPA+uhroch/ByfMcqwHswzy6Gugyz7EawEC4N8NtsN3PpAYoPnwgRWqgrjlvZ11hWBjRRNj6oB94D6lq4EGNGngoCWqAkCG8BwlOe8hy8KgTiWLTw45XEgyeByxW3fmO1QD2ez6DXcFG9eF8gg8fcezDaEk2XjtKkn00RWqgjnmsT5D5HrNVA0j4GF0NTHiM4OQFjtUA9mEBXQ1MWOBYDWAgPJrhNtgeZ1IDFB8uTJEaqGPOe72uMCyMaCJsfcIPvCdVNfCERg08mQQ1QMgQ3hMEpz1pOXjUiUSx6SnHKwkGz0KLVXeRYzWA/V7EYFewUX24iODDpx37MFqSjdeOkmSfSZEaqG2pBp61VQNI+KyFGniW4OTFjtUA9mGxhRpY7FgNYCA8k+E22J5jUgMUHy5JkRqonQI18LwfeEtVNfC8Rg0sTYIaIGQI73mC05YyqQGKTS84XkkweJZYrLovOlYD2O8XGewKNqoPXyT48CXHPoyWZOO1oyTZZSlSA7XMY32hzPeyrRpAwpfpamDhywQnL3esBrAPy+lqYOFyx2oAA2FZhttgW8GkBig+XJkiNVDLnPdxXWFYGNFE2LrKD7xXVDWwSqMGXkmCGiBkCG8VwWmvWA4edSJRbHrV8UqCwbPSYtVd7VgNYL9XM9gVbFQfrib4cI1jH0ZLsvHaUZLsaylSAzXNY/0RmW+trRpAwrV0NfDIWoKT1zlWA9iHdXQ18Mg6x2oAA+G1DLfBtp5JDVB8uCFFaqCmOe98XWFYGNFE2Pq6H3hvqGrgdY0aeCMJaoCQIbzXCU57w3LwqBOJYtNGxysJBs8Gi1V3k2M1gP3exGBXsFF9uIngwzcd+zBako3XjpJkN6dIDdQwj/U9Mt8WWzWAhFvoamDPFoKTtzpWA9iHrXQ1sGerYzWAgbA5w22wbWNSAxQfbk+RGqhhzrtbVxgWRjQRtr7lB94OVQ28pVEDO5KgBggZwnuL4LQdloNHnUgUm952vJJg8Gy3WHV3OlYD2O+dDHYFG9WHOwk+fMexD6Ml2XjtKEl2V4rUwInmsb5F5tttqwaQcDddDWzZTXDyHsdqAPuwh64GtuxxrAYwEHZluA22d5nUAMWH76VIDZxozrtZVxgWRjQRtr7vB94Hqhp4X6MGPkiCGiBkCO99gtM+sBw86kSi2PSh45UEg+c9i1V3r2M1gP3ey2BXsFF9uJfgw32OfRgtycZrR0myH6VIDVQ3j/WyMt/HtmoACT+mq4GyHxOc/IljNYB9+ISuBsp+4lgNYCB8lOE22D5lUgMUH36WIjVQ3Zy3jK4wLIxoImz93A+8L1Q18LlGDXyRBDVAyBDe5wSnfWE5eNSJRLHpS8crCQbPZxar7leO1QD2+ysGu4KN6sOvCD782rEPoyXZeO0oSXZ/itRANfNYXybzfWOrBpDwG7oaWPYNwcnfOlYD2Idv6Wpg2beO1QAGwv4Mt8H2HZMaoPjw+xSpgWrmvC/pCsPCiCbC1h/8wPtRVQM/aNTAj0lQA4QM4f1AcNqPloNHnUgUm35yvJJg8Hxvser+7FgNYL9/ZrAr2Kg+/Jngw18c+zBako3XjpJkD6RIDVQ1j/UpMt+vtmoACX+lq4EpvxKc/JtjNYB9+I2uBqb85lgNYCAcyHAbbAeZ1ADFh4dSpAaqmvNO1hWGhRFNhK2H/cD7XVUDhzVq4PckqAFChvAOE5z2u+XgUScSxaY/HK8kGDyHLFbdI47VAPb7CINdwUb14RGCD/907MNoSTZeO0qS/StFaqCKeax3jODLTIAQGxPVQEdsEzbk8DLdqgHsA3IQ1UBHz7wPWrtMAuGvDLfBlkbwg/wfqk0UH6YTbEqmGqhiHrQddIVhYUQTYWuGH3iZmSJy5c/IPF4NYKVE1QAhQ3gZBKdlZtoNHnUiUWwKESc3dcJg8KRn0gM7K8HEEa869juLwa5go/owi+DDPI59GC3JxmtHSbJ5CeOaTDVQ2TzWZ8l8+WzVABLmo6uBWfkITs7vWA1gH/LT1cCs/I7VAAZC3ky3wVaASQ1QfFgwRWqgsrkamKkrDAsjmghbC/mBV1hVA4U0aqBwEtQAIUN4hQhOK5xpN3jUiUSxqYjjlQSDp6DFqlvUsRrAfhdlsCvYqD4sSvBhMcc+jJZk47WjJNniKVIDYfNYHy7zlbBVA0hYgq4GhpcgOLmkYzWAfShJVwPDSzpWAxgIxTPdBlspJjVA8WHpFKmBsLkaGKYrDAsjmghby/iBV1ZVA2U0aqBsEtQAIUN4ZQhOK5tpN3jUiUSxqZzjlQSDp7TFqlvesRrAfpdnsCvYqD4sT/BhBcc+jJZk47WjJNmKKVIDlcxjfZXMd4KtGkDCE+hqYNUJBCdXcqwGsA+V6GpgVSXHagADoWKm22ALM6kBig8rp0gNVDJXAyt1hWFhRBNhaxU/8KqqaqCKRg1UTYIaIGQIrwrBaVUz7QaPOpEoNlVzvJJg8FS2WHWrO1YD2O/qDHYFG9WH1Qk+PNGxD6Ml2XjtKEm2RorUwAnmsR6W+WraqgEkrElXA+GaBCfXcqwGsA+16GogXMuxGsBAqJHpNthqM6kBig/rpEgNnGCuBirpCsPCiCbC1rp+4NVT1UBdjRqolwQ1QMgQXl2C0+pl2g0edSJRbKrveCXB4Kljseo2cKwGsN8NGOwKNqoPGxB82NCxD6Ml2XjtKEm2UYrUQEXzWC8g8zW2VQNI2JiuBgo0Jji5iWM1gH1oQlcDBZo4VgMYCI0y3QZbUyY1QPFhsxSpgYrmaiC/rjAsjGgibG3uB95JqhporlEDJyVBDRAyhNec4LSTMu0GjzqRKDad7HglweBpZrHqtnCsBrDfLRjsCjaqD1sQfHiKYx9GS7Lx2lGS7KkpUgMVzGN9qMx3mq0aQMLT6Gpg6GkEJ5/uWA1gH06nq4GhpztWAxgIp2a6DbYzmNQAxYctU6QGKpirgSG6wrAwoomwtZUfeK1VNdBKowZaJ0ENEDKE14rgtNaZdoNHnUgUm850vJJg8LS0WHXbOFYD2O82DHYFG9WHbQg+bOvYh9GSbLx2lCTbLkVqoLx5rBeV+drbqgEkbE9XA0XbE5zcwbEawD50oKuBoh0cqwEMhHaZboOtI5MaoPiwU4rUQHlzNVBEVxgWJlukGujsB14XVQ101qiBLklQA4QM4XUmOK1Lpt3gUScSxaazHK8kGDydLFbdro7VAPa7K4NdwUb1YVeCD8927MNoSTZeO0qS7ZYiNVCO8JwDma+7rRpAwu6Z9HbnOF7h0a5zMo8VhIX5Rg0inLDdMt0GxblMqzbFLz0SDFSTPvew8GEyA6qsZUCdZxtQSHieRUCd7zig0K7zkxRQ8aqj48/PtJswYTOOpE6SMoTfnst8F9hOEiS8wCLjXECI2J6OJxT2oaeFk3s6vgbDSdTTQh6cSxivCx3LQRzbCy2DNdioc+tCQv8vcizxoq3I8dpRVuSLHfsQx+hii4WA4gcbu7bA9SeCGleXEMeLOv/QJgKHtxXqb00/VhA2a1dU/k+eOG3VxeWL9Bg8SuUvY9VVKn8Vs25k5a9j142ovD9OXbnyN/HqSq1+TTf3601Zdvkrn78Px6x1rAPfxrf/n8rfGfQ1qPy9ybj4lX8wGsOjlX80G++/K/9k6Bus/LOpH6HyL8Y+98QBgs9vtvS5+tFYPJ5ehHxBmIcexf5kClFCfyL4etsKUSTsbbFI9XG8SKFdfRIUQNTkvouQ3HcTkvseQnJ/l5Dc3yMk9/cJyf1zQqDfxpTcPyAk9w8JyX0vIbnvIyT3jwjJ/WNCcv+EkNw/JST3zwg+n8aU3PsSkjthHnrTUpTc+1om90ttkzsSXmqR3LMdJ3e0K5vps90+CXAFW0acturkyMowX0jyZJgvJHkJH1NNz3LTV9WofBnmC1b+eJ/FSpULEPo6w11fI4wqGP+z5H8qFzL43DmoXJjQ15lO+3rMqCJGn5sfrVzU7DP2vysXI/R1luu++kYVN/2OACqXMP4+wRMlCX2dbdnXLH8fNqvulSLYdBlhASbkG48Qrx5hvnuE+eLNTpEIuMxSBPSzFQFI2M9CBPR3LALQrv7MC/NvhCu8g4QrvEME9XwH08J8mHAl+TvhSvIPQl/vZFqYjxCuDv8kXB3+RejrXUwLsyAszB5hYU4jLAx3My3M6YSFOYOwMGcS+jqXaWEOEWzKISzMhHzjEeLVI8x3jzBfvLkpWphzLBfmAbYLMxIOsFiYBzpemNGugUxX5/0tudDx+HGS7h7iInHOlQpREK8yx2IdrzLHIhq3MsPiFq8yx6ITr3LIvG7ERp37HJ9UxavM8QlSvMocn+zEq8zxiUu8yhyfhMSrXMryjs1B6u8xBmlWdOoCNTiGKrhr4uWzBo3YOO208G2ldl97pEMiPJfH4FHbJsJzRQyeBmk7q2z75I5yY1uXqffsocPTE+G5MgbPpa/f99mafq16DH/w1iHpac8uT4RnSAye9ZNaPt/i/L4Lns9+pO3UMb/tTIRnaAyeWXX3Xzj/9n3X1fxhe9VJk/KWSYRnWAyePplPtHtoQ+2mP9zQ8JLsnw9USIRneAye1bNabJq0fsJjH7Uu9W4oM3tMIjwjYvAcmFxiV76Tf1lT9+EVI08Z/lO/RHhGxuD58cCUM3IOhrfNndVr5uSbl+3A/BACFPCPL0o/Cox1jEOMEZy/OLfQ7+gTHC/sy8jM489PvEkxbRBBwI8iXJWk+f1St7CgberYx6tOsdGWI5d4Z3iyfmBo0re/jm4HdMfCsZv+s37Jto7259gYdUHDglbKGag/JhwVf/LN9CefN5owUcdYDhQ10EdbTDbcqHcSjyL0/SrCxzGpCtKrGIJ0LDFIEckI0lzLOfHf1dKxP/+7Wvq/dbU0Tl1cxmUeP+Hz+vuwoBsTL2nGCFrVjL9tMz3v1f99aX20sjjmWxyTCcpxqm8p30+MJfiL4ttr/vve42hlccy31/i+TeaCerXlgiri8KifmMiBfq2akK7VJCTqLaRXE5LMtYSJeF0mrZNBn67TBCK1T9cQ7KT0aTzhIyi5T+OT0Kfr/wW/45A3qv0T/gW3KqMv8MtQ+eoibN5UrZu2tXif0aFHeverV6Ngux/LFLv9xpZrp93QskZdwnn/PnHwW8Pgt3phw7YZ0jmu93PBhMxjC1qQ/Ajn9CZC/RsAN2YePX+Qc3R2U89rWDciQU/y7b8pU6lEvayfSAj0SdHr9lLqejcRL+mS9W38TTFs/G3r3J13T9428NZZz3wwdPyCR2S+m22/jUfCmzPj/mr1OPKbCZE/meAk2z5Mzoz7mcpxfZhMdLJp1Kh9DKffcEKx1q0Obh316Ig+4xc8Opmw4shRM8V38lRVMkzxlyK5bKrF8hTL0HiOm0KIrqmEAcCBx9SeJqJv4SjlKq98jDrJpljeJ3OL6qxbkqDvphD03S0EJ96aaTyYEX26NQlaaCrBTkqfbrPUd7dJFxhq5FM/VcVAmkSwGevflJnY8hFvkwNqmp9ZpquTdZoms0yXnE0diEl+qg7qx/0RvV+fqgtuInBMI2Su6cQl49+QuaZZZq4Z6mSYkYTMNY2QuWYQnDjTMnPNTELmmk6wk9KnWZaZa5aUuaJNQJfLXyI8tpN1tjpZZ2smK+U+bKF0OpkTezbhvHMIdeX+z9FMbGr/KUsyJQgo/b+dOCGC/t8eY/mW61PGY4v50wQigu4Of3m9M1OpRF3WtlB+cENY1u5M0eXunZaXu3fZXu4i4V0Wl7t3ES5373Z8uYt9uNvicvfuFF3u3m15uTvXd/I9amqfqxGl9yThcpfiuLmE6Lrnf/Byd67lOnyv6qx7kyAa5xLW1nsJTrzPUjTelwTReA/BTkqf5lmKxnlJvNzFQLqDYDPWvzMzseUj3iYH1P1+ZnlAnaz3azLLAwlc7t7hp+qgftwfjvr1qbrgTgLH/YTM9cD/4OXu/ZaZ60F1MjyYhMx1PyFzPUhw4kOWmeuhJGSuBwh2Uvr0sGXmetjB5S5l+UuEx3ayzlcn6/wkXO7OtcwiMez8x1jT8z5iebn7SBIudylLMiUIKP1/1PJy91EHl7tbLS93H/OX1wWZSiXqsraVcLn7GGFZW5Ciy90Flpe7j9te7iLh4xaXu48TLncXOr7cxT4stLjcXZiiy92Flpe7T/hOflJN7U9oROmTSbjcpTjuCUJ0Pfk/eLn7hOU6/JTqrKeSIBqfIKytTxGcuMhSNC5Kgmh8kmAnpU9PW4rGp5N4uYuB9BjBZqy/IDOx5SPeJgfUM35meVadrM9oMsuzCVzuPuan6qB+vIEIUjtVFywgcDxDyFzP/g9e7j5jmbkWq5NhcRIy1zOEzLWY4MTnLDPXc0nIXM8S7KT0aYll5lri4HKXsvwlwmM7WZ9XJ+vzSbjcfcIyi8Sw8x9jTc+71PJyd2kSLncpSzIlCCj9f8HycvcFaeXCq7MCUr2wv89zxriiu5vlHVPrh9DoRn+U3Hhk3OP3frepxcyWg3vW7Tes88Vy3XLX9zm86PpGvaovLPNzgdd3NWn55pNX73qjcIkPJ65YV/PQnN5yXZMtqJvZ+fHLR226pem5fS5Z9c6npz5UdvrNhfu26H7ijBF7281a+WmaXDc8b+srdX/veejXjGFtd5Vbf/jgyPOe2dDq2oz9l5W7bPLG1SfKdSk2VGj706PhayeuueXGyo9O7PXl4kZFqi3/tniZssvfPfDwosc7dJTrpj/xXfPPz6xd0ZvVr/b6i+75av+jT9Ut/fgb4SdOe+bWqesOPi7XpdhQ7+CyVp9NLXR28av29Rh1+PN7Ko7uNrjZ5wsmvDDg9txGP23eLNetv3nK9osGrujx0k2z6hcsdXP2eU+98MSaHQf71Ng4/vvnVs+8Ua4bbwvehYDzZJKfM4Ib6+7w98E3D4/5++Bji7Aw2tIJdSnn9V4EO14CLMs8Gtt5xbHFK6KixXkN62q3cALVwsJk8/7pkye1eRnsXg5YAVgJWAV4BfAqYDVgDeA1wFrAOsB6wAbA64A3ABsBmwBvAjYDtgC2ArYBtgPeAuwAvA3YCXgHsAuwG7BHXYDQmDxK2XJN2QpN2UpN2SpN2Suaslc1Zas1ZWs0Za9pytZqytZpytZryjZoyl7XlL2hKduoKdukKXtTU7ZZU7ZFU7ZVU7ZNU7ZdU/aWpmyHpuxtTdlOTdk7mrJdmrLdmrI9mce/TLuyvw8Loy0i6OMtyi8b1sUXby83riu8FaZ1wd6VZnVn4+XTKqO6v/x9qfWKSd19Ry/LXjWoe6Z/Cbc6ft1/ni+yJm7dYf9cGr4Wr+5Lxy4j18apO1a65FwXu24H+fJ0fcy6X0Rcym6IVbdx5GXv6zHq1lAukd8gXMZvjFq3pzrXvU3R6k44Li68N6PUnXB8DHmb9XWXauLN26Kt21YXm95WXd1u2jj2tmnqvqiPeW/78XVrRskP3lvH1X0gWi7xdqh1G0bNO97bSt190XOUtzOy7ogY+cx7J6Ju11i5z9sl1+0XM096u6W6DWLnVG8PQXQl8yunPea5fLvM925mAoTYmPIaTCR/13yAvPcIi5ltH97LPL5dvD68R3Rysp7WRZhc23SFYWFEE2Hr+/4E+UBVxu/7AyeXfaBRMNQPfQkz2XufMEE+IA4e1Tk4Kd4nTia06/0UZYzd5uM8T+b70DZjIOGH9Iwx70NCxtjrOGNgH/bSM8a8vSnKGLvNee/TFYaFEU2Erfv8CfKRmjH2aTLGR0nIGISZ7O0jTJCPLAeP+mZoik0fE4Lhn38ItrznT3DqV4KUpfoTQjDo+hCvOo7RJxaZ+JMUZeJd5vN3icz3qW0mRsJP6Zl4yaeEyfeZ40yMffiMnomXfJbg5DMJoE8cB9DnxD4EGzUxUXz4BWFuJHOF22XO+5yuMCyMaCJs/dIPvK/UFe5LzQr3VRJWOEKG8L4kOO0ry8GjTiSKTV8nuMLFa4PB84XF6rDf8aqF/d7PYFewUX24n+DDbxz7MFqSNUnOpnW/JSa0ZKmBd8xjfYbM952tGkDC7+hqYMZ3hAH63rEawD58T1cDM753rAYwEL7NdBtsPxCDLdioNlF8+GOK1MA75rzTdYVhYUQTYetPfuD9rKqBnzRq4OckqAFChvB+IjjtZ8vBo04kik2/OF5JMHh+tFh1DzhWA9jvAwx2BRvVhwcIPvzVsQ+jJdl47ShJ9rcUfTaw0zzWwzLfQVs1gIQH6WogfJDg5EOO1QD24RBdDYQPOVYDGAi/ZboNtsNMaoDiw99TpAZ2mvNW0hWGhRFNhK1/+IF3RFUDf2jUwJEkqAFChvD+IDjtiOXgUScSxaY/Ha8kGDy/W6y6fzlWA9jvvxjsCjaqD/+iJPSQWx9GS7Lx2lGSrGfeh6SqgbfNY32bzJcWSoAQGxPVwLY0gpPTQ27VAPYBOYhqYFs6wck6u0wCwQu5DbYMYrAFG9Umig8zCTYlUw28bZ4Mt+oKw8KIJsLWkB94WSERufKHQserAayUqBogZAgvRHBaVshu8KgTiWJTHscrCQZPZoge2HkTTBzxqmO/8zLYFWxUH+Yl+DCfYx9GS7Lx2lGSbP4UqYEd5rGeLfMVsFUDSFiArgayCxCcXNCxGsA+FKSrgeyCjtUABkL+kNtgK8SkBig+LJwiNbDDXA1cqisMCyOaCFuL+IFXVFUDRTRqoGgS1AAhQ3hFCE4rGrIbPOpEothUzPFKgsFT2GLVLe5YDWC/izPYFWxUHxYn+LCEYx9GS7Lx2lGSbMkUqYG3zGN9t8xXylYNIGEpuhrYXYrg5NKO1QD2oTRdDewu7VgNYCCUDLkNtjJMaoDiw7IpUgNvmauBXbrCsDCiibC1nB945VU1UE6jBsonQQ0QMoRXjuC08iG7waNOJIpNFRyvJBg8ZS1W3YqO1QD2uyKDXcFG9WFFgg9PcOzDaEk2XjtKkq2UIjWw3TzWO8l8YVs18DchXQ10ChOcXNmxGsA+VKargU6VHasBDIRKIbfBVoVJDVB8WDVFamC7uRroqCsMCyOaCFur+YFXXVUD1TRqoHoS1AAhQ3jVCE6rHrIbPOpEoth0ouOVBIOnqsWqW8OxGsB+12CwK9ioPqxB8GFNxz6MlmTjtaMk2VopUgPbzGN9scxX21YNIGFtuhpYXJvg5DqO1QD2oQ5dDSyu41gNYCDUCrkNtrpMaoDiw3opUgPbzNXAs7rCsDCiibC1vh94DVQ1UF+jBhokQQ0QMoRXn+C0BiG7waNOJIpNDR2vJBg89SxW3UaO1QD2uxGDXcFG9WEjgg8bO/ZhtCQbrx0lyTZJkRrYah7rK2S+prZqAAmb0tXAiqYEJzdzrAawD83oamBFM8dqAAOhSchtsDVnUgMUH56UIjWw1VwNLNcVhoURTYStJ/uB10JVAydr1ECLJKgBQobwTiY4rUXIbvCoE4li0ymOVxIMnpMsVt1THasB7PepDHYFG9WHpxJ8eJpjH0ZLsvHaUZLs6SlSA1vMY72LzHeGrRpAwjPoaqDLGQQnt3SsBrAPLelqoEtLx2oAA+H0kNtga8WkBig+bJ0iNbDFXA101hWGhRFNhK1n+oHXRlUDZ2rUQJskqAFChvDOJDitTchu8KgTiWJTW8crCQZPa4tVt51jNYD9bsdgV7BRfdiO4MP2jn0YLcnGa0dJsh1SpAY2m8f6BJmvo60aQMKOdDUwoSPByZ0cqwHsQye6GpjQybEawEDoEHIbbJ2Z1ADFh11SpAY2m6uB63WFYWFEE2HrWX7gdVXVwFkaNdA1CWqAkCG8swhO6xqyGzzqRKLYdLbjlQSDp4vFqtvNsRrAfndjsCvYqD7sRvBhd8c+jJZk47WjJNlzUqQG3rRUA+faqgEkPNdCDZxLcHIPx2oA+9DDQg30cKwGMBDOCbkNtvOY1ADFh+enSA28mQI1cIEfeD1VNXCBRg30TIIaIGQI7wKC03oyqQGKTRc6XkkweM63WHUvcqwGsN8XMdgVbFQfXkTw4cWOfRgtycZrR0myl6RIDWwyj/WFMl8vWzWAhL3oamBhL4KTeztWA9iH3nQ1sLC3YzWAgXBJyG2w9WFSAxQf9k2RGthkrgYe1xWGhRFNhK2X+oGXraqBSzVqIDsJaoCQIbxLCU7LDtkNHnUiUWy6zPFKgsHT12LV7edYDWC/+zHYFWxUH/Yj+LC/Yx9GS7Lx2lGSbE6K1MBG81h/ROYbYKsGkHAAXQ08MoDg5IGO1QD2YSBdDTwy0LEawEDICbkNtkFMaoDiw8EpUgMbzdXAfF1hWBjRRNh6uR94V6hq4HKNGrgiCWqAkCG8ywlOuyJkN3jUiUSx6UrHKwkGz2CLVXeIYzWA/R7CYFewUX04hODDoY59GC3JxmtHSbLDUqQG3jCP9T0y33BbNYCEw+lqYM9wgpNHOFYD2IcRdDWwZ4RjNYCBMCzkNthGMqkBig9HpUgNvGGuBnYLzRYWJlukGsj1A2+0qgZyNWpgdBLUACFDeLkEp40O2Q0edSJRbBrjeCXB4Bllsepe5VgNYL+vYrAr2Kg+vIrgw7GOfRgtycZrR0my41KkBl43j/UtMt/VtmoACa+mq4EtVxOcfI1jNYB9uIauBrZc41gNYCCMC7kNtmuZ1ADFh9elSA28bq4GNusKw8KIJsLW8X7gXa+qgfEaNXB9EtQAIUN44wlOuz5kN3jUiUSxaYLjlQSD5zqLVXeiYzWA/Z7IYFewUX04keDDGxz7MFqSjdeOkmRvTJEa2GAe62Vlvkm2agAJJ9HVQNlJBCff5FgNYB9uoquBsjc5VgMYCDeG3AbbzUxqgOLDySlSAxvM1UAZXWFYGNFE2DrFD7ypqhqYolEDU5OgBggZwptCcNrUkN3gUScSxaZbHK8kGDyTLVbdWx2rAez3rQx2BRvVh7cSfHibYx9GS7Lx2lGS7LQUqYH15rG+TOabbqsGkHA6XQ0sm05w8gzHagD7MIOuBpbNcKwGMBCmhdwG20wmNUDx4awUqYH15mrgJV1hWBjRRNg62w+8OaoamK1RA3OSoAYIGcKbTXDanJDd4FEnEsWm2x2vJBg8syxW3TscqwHs9x0MdgUb1Yd3EHx4p2MfRkuy8dpRkuxdKVID68xjfYrMd7etGkDCu+lqYMrdBCfPdawGsA9z6WpgylzHagAD4a6Q22C7h0kNUHx4b4rUwDpzNTBZVxgWRjQRtt7nB948VQ3cp1ED85KgBggZwruP4LR5IbvBo04kik33O15JMHjutVh1H3CsBrDfDzDYFWxUHz5A8OGDjn0YLcnGa0dJsg+lSA2sNY/1jjLfw7ZqAAkfpquBjg8TnDzfsRrAPsynq4GO8x2rAQyEh0Jug+0RJjVA8eGjKVIDa83VQAddYVgY0UTY+pgfeAtUNfCYRg0sSIIaIGQI7zGC0xaE7AaPOpEoNj3ueCXB4HnUYtVd6FgNYL8XMtgVbFQfLiT48AnHPoyWZOO1oyTZJ1OkBl4zj/VZMt9TtmoACZ+iq4FZTxGcvMixGsA+LKKrgVmLHKsBDIQnQ26D7WkmNUDx4TMpUgOvmauBmbrCsDCiibD1WT/wFqtq4FmNGlicBDVAyBDeswSnLQ7ZDR51IlFses7xSoLB84zFqrvEsRrAfi9hsCvYqD5cQvDh8459GC3JxmtHSbJLU6QG1pjH+nCZ7wVbNYCEL9DVwPAXCE5+0bEawD68SFcDw190rAYwEJaG3AbbS0xqgOLDZSlSA2vM1cAwXWFYGNFE2PqyH3jLVTXwskYNLE+CGiBkCO9lgtOWh+wGjzqRKDatcLySYPAss1h1VzpWA9jvlQx2BRvVhysJPlzl2IfRkmy8dpQk+0qK1MBq81hfJfO9aqsGkPBVuhpY9SrByasdqwHsw2q6Gli12rEawEB4JeQ22NYwqQGKD19LkRpYba4GVuoKw8KIJsLWtX7grVPVwFqNGliXBDVAyBDeWoLT1oXsBo86kSg2rXe8kmDwvGax6m5wrAaw3xsY7Ao2qg83EHz4umMfRkuy8dpRkuwbKVIDr5rHeljm22irBpBwI10NhDcSnLzJsRrAPmyiq4HwJsdqAAPhjZDbYHuTSQ1QfLg5RWrgVXM1UElXGBZGNBG2bvEDb6uqBrZo1MDWJKgBQobwthCctjVkN3jUiUSxaZvjlQSDZ7PFqrvdsRrAfm9nsCvYqD7cTvDhW459GC3JxmtHSbI7UqQGXjGP9QIy39u2agAJ36argQJvE5y807EawD7spKuBAjsdqwEMhB0ht8H2DpMaoPhwV4rUwCvmaiC/rjAsjGgibN3tB94eVQ3s1qiBPUlQA4QM4e0mOG1PyG7wqBOJYtO7jlcSDJ5dFqvue47VAPb7PQa7go3qw/cIPnzfsQ+jJdl47ShJ9oMUqYFV5rE+VOb70FYNIOGHdDUw9EOCk/c6VgPYh710NTB0r2M1gIHwQchtsO1jUgMUH36UIjWwylwNDNEVhoURTYStH/uB94mqBj7WqIFPkqAGCBnC+5jgtE9CdoNHnUgUmz51vJJg8Hxksep+5lgNYL8/Y7Ar2Kg+/Izgw88d+zBako3XjpJkv0iRGlhpHutFZb4vbdUAEn5JVwNFvyQ4+SvHagD78BVdDRT9yrEawED4IuQ22L5mUgMUH+5PkRpYaa4GiugKw8KIJsLWb/zA+1ZVA99o1MC3SVADhAzhfUNw2rchu8GjTiSKTd85XkkwePZbrLrfO1YD2O/vGewKNqoPvyf48AfHPoyWZOO1oyTZH1OkBlaYJ7QIvp9s1QAS/hSit/vZ8QqPdv0cOlYQFuYbNYhwwv4YchsUvzCt2hS/HEgwUE36fMDCh8kMqOWWAfWrbUAh4a8WAfWb44BCu35LUkDFq46O/y1kN2HCZhxJnSQvZ5rbKPMdtJ0kSHjQIuMcJETsIccTCvtwyMLJhxxfg+EkOmQhD34hjNdhx3IQx/awZbAGG3VuHSb0/3fHEi/aihyvHWVF/sOxD3GM/rBYCCh+wHNjImwl2bgn8+h+t7/f5e/f8fc7/f3b/n6Hv3/L32/399v8/VZ/v8Xfb/b3b/r7Tf5+o79/w9+/7u83+Pv1/n6dv1/r71/z92v8/Wp//6q/f8Xfr/L3K/39Cn+/3N+/7O9Pyji6b+7vm/n7pv6+ib9v7O8b+fuG/r6Bv6/v7+v5+7r+vo6/r+3va/n7mv6+hr8/0d9X9/fV/H1Vf1/F31f292F/X8nfn+DvK/r7Cv6+vL8v5+/L+vsysD8Cc+dPwF+YO7KgHJAGSAdkADIBIUAWIA8gLyAfID+gAKAgoBCgMKAIoCigGKA4oASgJKAUoDSgDKAsoBygPKBCljKR/X1YGG3ejQSlJm/UPPdburlNR5gurw8SbPqTyaZDBJv+YrLpMMEmnP+GdROy6XeCTR6TTX8QbEpjsukIwaZ0Jpv+JNiUwWTTXwSbMplsQpERNju1F2KyySPYlMVkUxrBpjxMNqUTbMrLZFMGwaZ8TDZlEmzKz2RTiGBTASabsgg2FWSyKQ/BpkJMNuUl2FSYyaZ8BJuKMNmUn2BTUSabChBsKsZkU0GCTcWZbCpEsKkEk02FCTaVZLKpCMGmUkw2FSXYVJrJpmIEm8ow2VScYFNZJptKEGwqx2RTSYJN5ZlsKkWwqYKlTR7RpormPE0T4TkhPk9B+dwFxNHPkoP/o52435Tuf97r7/G8Qb1KyAGoDKiifP5Hvc1pM+G6t1KW+ThUtfQr1f4tBPvDBPurMdm/lWB/ZYL91Qn26+ZhVX8eVvP31f19FWkengh/1wDUBNRKcB5uI4zDiYRxqM3kx+0E+2sQ7K/DZP9bBPtrEuyvm+A8rO3Puzr+vq6/ryXNw3rwd31AA0DDBOfhDsI41COMQyMmP75NsL8+wf7GTPbvJNjfgGB/kwTnYSN/3jX29038fUNpHjaFv5sBmgNOSnAevkMYh6aEcTg5wXE42e93M3/f3N+fJI1DC/j7FMCpgNPifD8Zz97Tze0tnAjPGfF50uVzq+Nyuj8OLfx9af/74TOkcWkJf7cCtAac6ZdnimO2xrI/zua1JPhVvq++je+ftlk+aXAPPR6YoJS19cvkjTqxWxIma5vodXspdb22hAHAgcfv6tNi1AlHKVd55WNUp7UhBmOwtVOd1S7r+FmkOoYy2DG4/zHA9Lzts4wHM6JP7Q0mWzzutgQ7KX3qEKNPalu5Tx2koMoj9UfuU5zN09RN21q8z+jQI7371atRsN2PZYrdfmPLtdNuaFmjLuG8/wRDEPxBwFNs6wj1OwE6x1n94o0v5aquI8FvXYhJIlm3unaxDPSzshIgPCuL3q4rYTBt7eoqTY6woG/UyUS5xO5E6P/ZKZpMZ1tOpm62kwkJu1lMpu6OJxPa1d1yMtkERvcsuq48h+isvP6+o8/Vyd93zopdjjznAnoAzouTfeOZ0TGLNi5B3XhjcX4WzUfBRv38+RyCTRcQ+ir753zJD7JtcU8ijq5uuN+aTm+L9vYEXAi4SPEzdZw6E8bpYsI46WyJ1yaYv6b1g3GgxuMlTHNQ/jwzXt1ejscW51tnAgf6+hKLse1NHFtqP3BMKbkJx7W3RT88QVvYMQxl9exFqRsW8bcO724eFattvlUTypc9uLN9vTLDrjh8Z/le5+bmKThn/hk9Q2d/c3bmrF93RRgWzRjq4ve8uYKK4OujXqf2kbxBNWIZnOTldLo3+6ZIplF4Zb5LbWUaEl5qIdOyHcs0tCvbQqbpHllBdX60SRPPZsMZHy3SjdvKfbvMH6N+atRclnUslIOyfpLTbAeFqgufN1vTZuPHYpcRJlW/LNpg20xwtIe6hlP60J+4hlP7gJmzv8ValkNck20C5SWLrDwgQbvind92vAY69qPtKjaIuIpFe9YPNQYIS783gBjH6hYWZm3lfg32k+blatIcrEmal2sMzFDIXQ1IvIQ5mJBsLnecMDF40B7qJ219CH2g9PeKBIPSxG5df03GybQupb9XOr6QwkWBkID/nscDLZLpEMf9wFgkLHAe9mGQRT+GJulDg3j2LU23i7VEbDJR/GFhtHknCh6bPGFuUw3BY1OaMLepprCziZrHawman4ONOm9rE3ieSefpex2pbvVHt/TccPLGT2496Z3ON+8/Xex8Zd8pn5dqfMrpc/K2+3po3tqJ8NQVPP2pJ5Izj+Px1BfmvlzC5MsGgoenoeDhaSR4eBoLHp4mgoenqeDhaSZ4eJoLHp6TBA/PyYKHp4Xg4TlF8PCcKnh4ThM8PKcLHp4zBA9PS8HD00rw8LQWPDxnCh6eNoKHp63g4WkneHjaCx6eDoKHp6Pg4ekkeHg6Cx6eLoKH5yzBw9NV8PCcLXh4ugkenu6Ch+ccwcNzruDh6SF4eM4TPDznCx6eCwQPT0/Bw3Oh4OG5SPDwXCx4eC4RPDy9BA9Pb8HD00fw8PQVPDyXCh6ebMHDc5ng4ekneHj6Cx6eHMHDM0Dw8AwUPDyDBA/PYMHDc7ng4blC8PBcKXh4hggenqGCh2eY4OEZLnh4RggenpGCh2eU4OHJFTw8owUPzxjBw3OV4OEZK3h4xgkenqsFD881gofnWsHDc53g4RkveHiuFzw8EwQPz0TBw3OD4OG5UfDwTBI8PDcJHp6bBQ/PZMHDM0Xw8EwVPDy3CB6eWwUPz22Ch2ea4OGZLnh4ZggenpmCh2eW4OGZLXh45ggentsFD88dgofnTsHDc5fg4blb8PDMFTw89wgennsFD899godnnuDhuV/w8DwgeHgeFDw8DwkenocFD898wcPziODheVTw8DwmeHgWCB6exwUPz0LBw/OE4OF5UvDwPCV4eBYJHp6nBQ/PM4KH51nBw7NY8PA8J3h4lggenucFD89SwcPzguDheVHw8LwkeHiWCR6elwUPz3LBw7NC8PCsFDw8qwQPzyuCh+dVwcOzWvDwrBE8PK8JHp61godnneDhWS94eDYIHp7XBQ/PG4KHZ6Pg4dkkeHjeFDw8mwUPzxbBw7NV8PBsEzw82wUPz1uCh2eH4OF5W/Dw7BQ8PO8IHp5dgodnt+Dh2SN4eN4VPDzvCR6e9wUPzweCh+dDwcOzV/Dw7BM8PB8JHp6PBQ/PJ4KH51PBw/OZ4OH5XPDwfCF4eL4UPDxfCR6erwUPz37Bw/ON4OH5VvDwfCd4eL4XPDw/CB6eHwUPz0+Ch+dnwcPzi+DhOSB4eH4VPDy/CR6eg4KH55Dg4TkseHh+Fzw8fwgeniOCh+dPwcPzl+DhwQaGdZWGNB6PiSeNiSediSeDiSeTiSfExJPFxJOHiScvE08+Jp78TDwFmHgKMvEUYuIpzMRThImnKBNPMSae4kw8JZh4SjLxlGLiKc3EU4aJpywTTzkmnvJMPBWYeCoy8ZzAxFOJiSfMxFOZiacKE09VJp5qTDzVmXhOZOKpwcRTk4mnFhNPbSaeOkw8dZl46jHx1GfiacDE05CJpxETT2MmniZMPE2ZeJox8TRn4jmJiedkJp4WTDynMPGcysRzGhPP6Uw8ZzDxtGTiacXE05qJ50wmnjZMPG2ZeNox8bRn4unAxNORiacTE09nJp4uTDxnMfF0ZeI5m4mnGxNPdyaec5h4zmXi6cHEcx4Tz/lMPBcw8fRk4rmQieciJp6LmXguYeLpxcTTm4mnDxNPXyaeS5l4spl4LmPi6cfE05+JJ4eJZwATz0AmnkFMPIOZeC5n4rmCiedKJp4hTDxDmXiGMfEMZ+IZwcQzkolnFBNPLhPPaCaeMUw8VzHxjGXiGcfEczUTzzVMPNcy8VzHxDOeied6Jp4JTDwTmXhuYOK5kYlnEhPPTUw8NzPxTGbimcLEM5WJ5xYmnluZeG5j4pnGxDOdiWcGE89MJp5ZTDyzmXjmMPHczsRzBxPPnUw8dzHx3M3EM5eJ5x4mnnuZeO5j4pnHxHM/E88DTDwPMvE8xMTzMBPPfCaeR5h4HmXieYyJZwETz+NMPAuZeJ5g4nmSiecpJp5FTDxPM/E8w8TzLBPPYiae55h4ljDxPM/Es5SJ5wUmnheZeF5i4lnGxPMyE89yJp4VTDwrmXhWMfG8wsTzKhPPaiaeNUw8rzHxrGXiWcfEs56JZwMTz+tMPG8w8Wxk4tnExPMmE89mJp4tTDxbmXi2MfFsZ+J5i4lnBxPP20w8O5l43mHi2cXEs5uJZw8Tz7tMPO8x8bzPxPMBE8+HTDx7mXj2MfF8xMTzMRPPJ0w8nzLxfMbE8zkTzxdMPF8y8XzFxPM1E89+Jp5vmHi+ZeL5jonneyaeH5h4fmTi+YmJ52cmnl+YeA4w8fzKxPMbE89BJp5DTDyHmXh+Z+L5g4nnCBPPn0w8fzHxiDQeHo+JJ42JJ52JJ4OJJ5OJJ8TEk8XEk4eJJy8TTz4mnvxMPAWYeAoy8RRi4inMxFOEiacoE08xJp7iTDwlmHhKMvGUYuIpzcRThomnLBNPOSae8kw8FZh4KjLxnMDEU4mJJ8zEU5mJpwoTT1UmnmpMPNWZeE5k4qnBxFOTiacWE09tJp46TDx1mXjqMfHUZ+JpwMTTkImnERNPYyaeJkw8TZl4mjHxNGfiOYmJ52QmnhZMPKcw8ZzKxHMaE8/pTDxnMPG0ZOJpxcTTmonnTCaeNkw8bZl42jHxtGfi6cDE05GJpxMTT2cmni5MPGcx8XRl4jmbiacbE093Jp5zmHjOZeLpwcRzHhPP+Uw8FzDx9GTiuZCJ5yImnouZeC5h4unFxNObiacPE09fJp5LmXiymXguY+Lpx8TTn4knh4lnABPPQCaeQUw8g5l4LmfiuYKJ50omniFMPEOZeIYx8Qxn4hnBxDOSiWcUE08uE89oJp4xTDxXMfGMZeIZx8RzNRPPNUw81zLxXMfEM56J53omnglMPBOZeG5g4rmRiWcSE89NTDw3M/FMZuKZwsQzlYnnFiaeW5l4bmPimcbEM52JZwYTz0wmnllMPLOZeOYw8dzOxHMHE8+dTDx3MfHczcQzl4nnHiaee5l47mPimcfEcz8TzwNMPA8y8TzExPMwE898Jp5HmHgeZeJ5jIlnARPP40w8C5l4nmDieZKJ5ykmnkVMPE8z8TzDxPMsE89iJp7nmHiWMPE8z8SzlInnBSaeF5l4XmLiWcbE8zITz3ImnhVMPCuZeFYx8bzCxPMqE89qJp41TDyvMfGsZeJZx8SznolnAxPP60w8bzDxbGTi2cTE8yYTz2Ymni1MPFuZeLYx8Wxn4nmLiWcHE8/bTDw7mXjeYeLZxcSzm4lnDxPPu0w87zHxvM/E8wETz4dMPHuZePYx8XzExPMxE88nTDyfMvF8xsTzORPPF0w8XzLxfMXE8zUTz34mnm+YeL5l4vmOied7Jp4fmHh+ZOL5iYnnZyaeX5h4DjDx/MrE8xsTz0EmnkNMPIeZeH5n4vmDiecIE8+fTDx/MfGIdB4ej4knjYknnYkng4knk4knxMSTxcSTh4knLxNPPiae/Ew8BZh4CjLxFGLiKczEU4SJpygTTzEmnuJMPCWYeEoy8ZRi4inNxFOGiacsE085Jp7yTDwVmHgqMvGcwMRTiYknzMRTmYmnChNPVSaeakw81Zl4TmTiqcHEU5OJpxYTT20mnjpMPHWZeOox8dRn4mnAxNOQiacRE09jJp4mTDxNmXiaMfE0Z+I5iYnnZCaeFkw8pzDxnMrEcxoTz+lMPGcw8bRk4mnFxNOaiedMJp42TDxtmXjaMfG0Z+LpwMTTkYmnExNPZyaeLkw8ZzHxdGXiOZuJpxsTT3cmnnOYeM5l4unBxHMeE8/5TDwXMPH0ZOK5kInnIiaei5l4LmHi6cXE05uJpw8TT18mnkuZeLKZeC5j4unHxNOfiSeHiWcAE89AJp5BTDyDmXguZ+K5gonnSiaeIUw8Q5l4hjHxDGfiGcHEM5KJZxQTTy4Tz2gmnjFMPFcx8Yxl4hnHxHM1E881TDzXMvFcx8QznonneiaeCUw8E5l4bmDiuZGJZxITz01MPDcz8Uy25ElTeBr2P3vkR40erPVS93YvTJx4Ye+aTb7sOG7Z8FltPjow5wc4Xk2Y2zQlSTbF45mabm7/80SbqOOD578iy7z+lVB3SBbd37c47segLHo/hlr041ameZshzG26jcmmTGFu0zQmm0LC3KbpTDZlCXObZjDZlEeY2zSTyaa8wtymWUw25RPmNs1msim/MLdpDpNNBYS5Tbcz2VRQmNt0B5NNhYS5TXcy2VRYmNt0F5NNRYS5TXcz2VRUmNs0l8mmYsLcpnuYbCouzG26l8mmEsLcpvuYbCopzG2ax2RTKWFu0/1MNpUW5jY9wGRTGWFu04NMNpUV5jY9xGRTOWFu08NMNpUX5jbNZ7KpgjC36REmmyoKc5seZbLpBGFu02NMNlUS5jYtYLIpLMxtepzJpsrC3KaFTDZVEeY2PcFkU1VhbtOTBJvSxdHPt/AzXdxOBNQA1ATUAtQG1AHUBdQD1Ac0QHsBjQCNAU0ATQHNAM0BJwFOBrQAnAI4FXAa4HTAGYCWgFaA1oAzAW0AbQHtAO0BHQAdAZ0AnQFdAGcBugLOBnQDdAecAzgX0ANwHuB8wAWAnoALARcBLgZcAugF6A3oA+gLuBSQDbgM0A/QH5ADGAAYCBgEGAy4HHAF4ErAEMBQwDDAcMAIwEjAKEAuYDRgDOAqwFjAOMDVgGsA1wKuA4wHXA+YAJgIuAFwI2AS4Cb0A2AyYApgKuAWwK2A2wDTANMBMwAzAbMAswFzALcD7gDcCbgLcDdgLuAewL2A+wDzAPcDHgA8CHgI8DBgPuARwKOAxwALAI8DFgKeADwJeAqwCPA04BnAs4DFgOcASwDPA5YCXgC8CHgJsAzwMmA5YAVgJWAV4BXAq4DVgDWA1wBrAesA6wEbAK8D3gBsBGwCvAnYDNgC2ArYBtgOeAuwA/A2YCfgHcAuwG7AHsC7gPcA7wM+AHwI2AvYB/gI8DHgE8CngM8AnwO+AHwJ+ArwNWA/4BvAt4DvAN8DMCZ/BPwE+BnwC+AA4FfAb4CDgEOAw4DfAX8AjgD+BPwFwKDzAGmAdEAGIBMQAmQB8gDyAvIB8gMKAAoCCgEKA4oAigKKAYoDSgBKAkoBSgPKAMoCygHKAyoAKgJOAFQChAGVAVUAVQHVANUBJwJqAGoCagFqA+oA6gLqAeoDGgAaAhoBGgOaAJoCmgGaA04CnAxoATgFcCrgNMDpgDMALQGtAK0BZwLaANoC2gHaAzoAOgI6AToDugDOAnQFnA3oBugOOAdwLqAH4DzA+YALAD0BFwIuAlwMuATQC9Ab0AfQF3ApIBtwGaAfoD8gBzAAMBAwCDAYcDngCsCVgCGAoYBhgOGAEYCRgFGAXMBowBjAVYCxgHGAqwHXAK4FXAcYD7geMAEwEXAD4EbAJMBNgJsBkwFTAFMBtwBuBdwGmAaYDpgBmAmYBZgNmAO4HXAH4E7AXYC7AXMB9wDuBdwHmAe4H/AA4EHAQ4CHAfMBjwAeBTwGWAB4HLAQ8ATgScBTgEWApwHPAJ4FLAY8B1gCeB6wFPAC4EXAS4BlgJcBywErACsBqwCvAF4FrAasAbwGWAtYB1gP2AB4HfAGYCNgE+BNwGbAFsBWwDbAdsBbgB2AtwE7Ae8AdgF2A/YA3gW8B3gf8AHgQ8BewD7AR4CPAZ8APgV8Bvgc8AXgS8BXgK8B+wHfAL4FfAf4HvAD4EfAT4CfAb8ADgB+BfwGOAg4BDgM+B3wB+AI4E/AXwAUAB4gDZAOyABkAkKALEAeQF5APkB+QAFAQUAhQGFAEUBRQDFAcUAJQElAKUBpQBlAWUA5QHlABUBFwAmASvhcUkBlQBVAVUA1QHXAiYAagJqAWoDagDqAuoB6gPqABoCGgEaAxoAmgKaAZoDmgJMAJwNaAE4BnAo4DXA64AxAS0ArQGvAmYA2gLaAdoD2gA6AjoBOgM6ALoCzAF0BZwO6AboDzgGcC+gBOA9wPuACQE/AhYCLABcDLgH0AvQG9AH0BVwKyAZcBugH6A/IAQwADAQMAgwGXA64AnAlYAhgKGAYYDhgBGAkYBQgFzAaMAZwFWAsYBzgasA1gGsB1wHGA64HTABMBNwAuBEwCXAT4GbAZMAUwFTALYBbAbcBpgGmA2YAZgJmAWYD5gBuB9wBuBNwF+BuwFzAPYB7AfgOe3y/PL77Hd/L/iAA32eO7xrH94DjO7rx/dn4bmt87zS+Exrf14zvUsb3HOM7iPH9wPjuXnyvLr7zFt9Hi++Kxfe44jtW8f2n+G5SfG8ovtMT37eJ78LE91TiOyTx/Y747kV8L+KrAHyfIL7rD9/Dh+/Iw/fX4bvl8L1v+E42fF8avssM3zOG7wDD93Phu7PwvVb4zil8HxS+qwnfo4TvOML3D+G7gfC9PfhOHXzfDb6LBt8Tg+9wwfer4LtP8L0k+wD4Pg981wa+BwPfUYHvj8B3O+B7F/CdCPi+AnyXAD7nH5/Bj8/Hx2fX43Pl8Znv+Dx2fFY6PsccnzGOz//GZ3Pjc7Pxmdb4vGl8FjQ+pxmfoYzPN8ZnD+NzgVF44/N08Vm3+BxafEYsPr8Vn62Kzz3FZ5Li80LxWZ74nE18BiY+nxKfHYnPdcRnLuLzEPFZhfgcQXzGHz5/D5+Nh8+tw2fK4fPe8Fls+Jw0fIYZPl8Mn/3193O5APg8K3zWFD4HCp/RhM9Pwmcb4XOH8JlA+LwefJYOPucGn0GDz4fBZ7fgc1XwmSf4PBJ8Vgg+xwOfsYHPv8BnU+BzI/CZDvi8BXwWAj6nAJ8hgL/vx9/e4+/i8Tfr+Hty/K03/g4bfyONv1/G3xbj737xN7n4e1n8LSv+zhR/A4q/z8TfTuLvGvE3h/h7QPytHv6ODn/jhr8/w9+G4e+28DdV+Hsn/C0S/k4If8ODv6/B377g71LwNyP4ew78rQX+DgJ/o4C/H8B7+/G+e7wnHu9Xx3vJ8T5vvAcb74/Ge5fxvmK85xfvx8V7ZfE+VrzHFO//xHsz8b5JvKcR7zfEewHxPj28hw7vb8N7z/C+MLxnC++nwnud8D4kvEcI79/B6zC87wXvM8F7QPCeCLyfAL+/x+/L8ftp/D4Yv3/F7zvx+0X8Pg+/P8Pvq/D7Ifw+Br//wO8b8PN9/DwdP7/Gz4vx81n8PBQ/f8TP+/DzNfw8Cz8/ws9r8PMR/DwCr//xehuvb/F6EqcsXhsGm7+E/X39iPch4Pf++D07fq+N3yPj97b4PSl+L4nfA+L3bvg9F36vhN/j4Pcm+D0Ffi+An8Pj5974OTN+roufo+Lnlvg5IX4uh5+D4edO+DlP8LlKZXH0Or2qOHr/TnVx/FZf+rukv585cP2mX/ZnbZPrlY5xLOzv1+/uVaFqybK75WNz/H2lULt3zq3z2nvyMVxH/j5229K0dt3zfCofu9I/1ifPAyvPfCv/IvnY0BjHRsY4lhvj2PgYx66PcWxSjGM3xzg2JcaxqTGOTY9xbGaMY7fHOHZnjGPzYhy7P8ax+TGOPRrj2IIYxx6PcWxRjGPPxDi2JMaxpTGOrYhxbGWMY2tiHFsb49j6GMc2xDj2ZoxjW2IceyvGsbdjHPstiGlNvG/OiGFLjGM7YhzbGePYl/6xjPen1mt7drep8jEv8+h+yV3dc3IuGTiit4i+hYXR1j2BtoMSaJudQNtRCbTNSaBt2Ljw+K1fAm1TNc5DE2g7MIG2qfJR/wTaJmJzbgJtE+FNZE6myuZEfBQ2Ljx+G5ZA20TiKGxcePw2IIG2oxNom0h/UzUnByfQ9n9xblyVQNtExioRHyWyDoaNC4/fhifQ9j+NJFhiP5FxTtUaekUCbesn0DZsXHj81imBtomsR2HjwuO3VOWcRPJkIvEbNi48fvtftDmR+B2bQNtE1oX/dLt527oJtA0bFx6/JaKB/xfX36oJtL0kgbaJaOBEtPd/uk6w5Jz/a9qsdwJt//5eDbea/j571Kickbl9+w0bMjw7d/BlV+b0HTYyux/sxuSMHDV42NC+V43MHj48Z2Qpv34ef+9/pP3393np5vxeHqkdvf2EtnnUE5Lai7/be8KW/2j/g+8wbdqHAkOk9rItwXnx+9D80t8FFX5L+9sman+xGDYHvmkj1Q8Loy0Tv/PFfhbxC7Dv1fy/R+cOvnJw7rjWf0/VNv/M1G5/T9QLjs5T9YSe8v82UcrzSXZnSHXMx2Rs2+Cc6UFnpL/lLUPZB3WC75jzSvzB3uS3+u+uO/DO850bDymqtMct8A32s6H/9+BRfUcN7p/TN2fAgJx+GPujh+bmjOw7MgdiPiIH+LFf1m+X4thvn2Dst09w7nt5pDYW7bWxr9oipH1bqW1bpV4BERmHch2Mo0LS34X9vwv4+3bSuYL2CY5NuwTHxismoo9HkBuK+/+Xc8PwkYPHZOfmdBrVA2Z0u78ndJuj8/ncf6azPEYqh1D+Vsuilet8IJ87CXmlfaJ5pYy/d51Xgpw9MCe3b/bo3EF9rxqcOzRn1Ki//AYpzhtzEswbc/4teUOOW12c6HJC0EZ+bgj+XVVqg1t76XyecqyDhjc41jGKHbh1ko5lKMc6S8cylWNdpGMh5dhZ0rEs5VhX6Vge5djZ0rG8yrFu0rF8yrHu0rH8yrFzpGMFpL8RQc7FLd0vKyiVyZoJjxWR2hPmxrlB+6J27VsVkGwUiu3BMTl/FVGOZUrHAhvQL297kfVmS/WCtSmPwme7nluOXddiGv4ikm24WWjZf9q2tbMrPVjv9kpjKMdXcM6AS44vItfZuvUtXSmTz59XJLbOe8r5Aj61f0F8YMwF+ti/DuiQk9saVpmeRxcZ2Uj5xHIykI/Lm1pHrafW1yVYL8o+6Jhapga+peP+nrSqrRmKnZnieDsD3pAdb0HTCROcP69ii+2ECSl8av/Ucc2y4yvgKe1lPvmc8sIkLzjq2MoLTijKuWShKNc/1d8XVurh1kbhyKOxVy4LxgfHrLliuzy2tvO5sDi+74F/8oiE5kCBBH3aNWivCsmwUfNjAi6vHb8XjLMs2oJYxTFRPwzKJx1L17QNxjFDqb/SO9YuEG2FlDq6uevK/2o+yq/hCcZWFlCEsc0wzUfB+fMqttjmowIKn9o/WSjjsYIaWworx3BT47qghkcnJLnOVUAc3/9E54zs+/wKT7SYuUQql9vpYga3IMYylPqPSTHTxy8rJI6fI6rA142lXD+vci65vfphrjw3CHMxLbClcBxbCiq2FJKOyeIXUSTGuXBrq5xLJ56FON4nqp3BfErTnEfm0/kiZGlzUD+4UAkJ/XgF58tQ6g/x97gOfebPG13eky+S4uU9y4sX47wXnD9ZeS/eWKt5r6jGlsLKMdzUXFVUw1NUw8N1rgJCP8d1+4BHLVN5ZN+b5r3xUnkieW+GlPcm+mW6WCui8OnGMlbek9sXVc5VLM651Lwlty+mnKt4jHPhpuYtub3cVpe3ZDvVvFVM007miZW3TG0O6pfw/x8tbwXny1Dqz/D38fJW0N4kbxWXyl3kreD8ycpb8cZazVslNLYUVo7hpuaaEhqeEhoernMVEPo5rtsHPGqZyiP73jRvPSiVJ5K3xkp5a75fpou14gqfbixj5S25fQnlXCXjnEvNW3L7ksq5SsU4F25q3pLby211eUu2U81bJTXtZJ5YecvU5qB+8EPpaHkrOF+GUn+xv4+Xt4L2JnmrlFTuIm8F509W3oo31mreKq2xpbByDDc115TW8JTW8HCdq4DQz3HdPuBRy1Qe2femeWuNVJ5I3sqW8tY6v0z32UwphU/nf7m+mrfyxzhX6TjnUvOW3L404Vy4qXmroOZcQmmXqdTFTc1bBTXtZB7d51xUm4P6wRfoIaEfr+B8GUr9Hf4+Xt4qrdiu2iv/nU9ju+6z1lg5V66fT7E9qL8nhu2epr3D7xpam+bcVH/XkM+Or1Us38b6vLa05liic/YLf5/M/I5j9rFi+7/8u4ZW8daDb6VyNXdRPqvvLK0HP/hlqfysXo3nfEnkkfsTjGXgJ3VdCQuzLbCzjMbO4NxlpXIXeSc4f17FFtu8U1bhU/un5p1ydnytPKW9zCefM7AnGOvymmPBuSr4/w9FOVfQNkOpn6msMTKHOjeCY7K9cpmcdwJHqTlTOmQ9n2W7Av/Eyxv5vMi+yMdM8kZQv56UN4Iv4wtp2qvaQr7PwFP+1q13GRpb1JwXilI/pNge1C/uE8vaItZ4yPkpK8p4lJLO+aVyzkxNv9KlsjSlX7rv/DM1/dKNaZZyrnTNueT+5BV6W6PptXSl/0H9ipox1em1oL3uptUCyjHdd1W67zHVa095PAspx+TvnNTvhaPdYCbb7YnIG9NU3xRVjsljV0w5JvtK/cxTvkeghHJM9llJ5Zi8xqnXlrprsnxCP4/UOSavKTKHnIPlmJHrqzkkqN84Rszo1gT5Zi01ZnQ5Wc77ZZT+yOtGeRGfW+5P3ijcoSj1yyn9D+q3iBEzuvsXdDqmXAw71bVRlyPLxOmrmq91cyXI8bqbOGWdJYT1fWatcYz2e8d45P7hpq4NOh/K9anzR1175TlTRjkmr8uqD3Q3HMq2yDcFq8d067hOq3vK36XjcKptddduujVdvXbrppnPnsIh5wh5nNR1Nah/bowcoZu7sdbVWLpWtkc3pmWVY7prX938D+q5mP9y/9X5b6rhTeJFN//l2MinHJNzVxmFR/cZg+n8l+dQcP1r8j1BvPmfX6lvO/8HxJj/us9r5TmkrpFB/cHE+S+Pb6LzXx6XWPNf/t4jOLd6zgTnf8a/ef7nV47Jn1er8z+/hsd0/stzKPg+wGT+l4jDqc7/QFNGm//B+TKU+tcR57/8fWS0+T8hxvzXff8Za/7rvsMoqelXrO8wdN+lyto9OLd6ThfzX+6/Ov9j9RU3dWx0OVKex7E+e1Dnv/ydtfo9c7Lm/4P+3ybzv2gcTnX+B9dp0eZ/cL4Mpf7txPkv30cUbf7fFWP+6+5bijX/dfeeFNP0K9Z9DLp7oNQfY6Vrzuli/sv9V+d/rL7ipo6NLkfK8zjaPS66+S/fa6beH5as+R/cf2cy/wvG4VTnf/AZSbT5H5wvQ6n/JHH+y5/hRJv/T8eY/wGv3K9Y8193f3IhTb90Y1pYOaa7j143/+V7rIP+BccSnf9y/9X5H6uvuKljo7ufVr4X2uSeUd199IUUnmTN/+C+e5Pr33icatvA/mjzPzhfhlJ/TYz5r7v+ledXtOvfdTHmv+63H7Guf3V5QPebB92YxoqNWNe/Qb0E539B3fyX+6/O/1h9xU0dG10u0X3GXFgcP69jXf+qv9dI1vVvW6kcN/U7A3kftAnOi1seTX35t0nBJvtLiMj7NdI158pS2gX1P/RPIK8tQmlfWMMvj6WIYrfu94We5lzpmjL5u7pd3jGbE3xoxhxP4aQ+NONTL9JWOacl86EZtufflrX/l03rB850df5P83Rvl7b0tkrxzq+bT+lKG3lOpmvqp0nH5frf+ydA3/0o5Z6gTOXDsj9j1POi7HU2y/bEmsvpmvoBdz5N/eCYvCbKuVOuI4+XfK680nG5/hElxuW4lHOkyq/+HlZndzRdp54rXVMmx/ivSlzZ3qMlz72+ffGRMyNGD8sdnDM0t4dfmuLHzXRK8HEznRJ8XExaok8WCCK0vdJeKOfVPQ2hvXJMvjM2+EWy+ngq+dtZ3DpKXPLqo67KhD51dPl4KsqjQu6aePmsQSM2TjstfFup3dce6aA+KiRWW/VV30HbdvHbempB8IiRzv7/1W/i5UamWVO9O8kywv9Rc7o7UGLdbUq1s7DGTk/h8ZLII7dTxyqRXKUqX0L7kPpkBUHg1t2hIWf8KlI5Io90LF3TVr1rKKhfXWoXzPVCSh2dr+Snbsh1cWujcAV1a0lcDaKcT2jOF9il83XeGDZnRuHwNHWzFI5MTTvZbgqfbozUXzIEdTtIXE2Emf3y+WLZb+LXfDE42igcnqadUNrpHq+WLwqnrq7a5+D/eTRc8rnUcQ3GB8fldP9v3XhkROHDLV1TX73i1t29l0fTH/UTkTP9Pc7D4LFoulwtz0V5rqix62n6lE/o/arLF+rdZ/IxOdcEeSjBK8tOnmRLcG7KlWU3f/+/fmUZ9AvUd+6/5NGwHRLU3B3+LZq7rdJeKOeN9dhXneaWH/8Y65Gwusc/JqhN2nM+ElY9HhL63Ieb7g5Y+bwJ5okOieYJrse2BvOhfw4+/X3YqJy+gwYPzT3BL/3/JaITVdaWs9f4Yc+xItrmQc66iFavNiz71C7BLJdWTETPbEFEB7Nft+LLcyna7ybUSNOdQz6POjayH8L+vngjsavS3mbj6pRqPqzbmEl7z1s0vsT8Wl8ULvPd6NPGHHp/mNqXtBi2F4hhQ6x7T/8Nmamiv3edmYJ+Xpl7NCdV9v//n8pIKP7+UxnHb0YqQ75HXR6n4Pfqulg+7ndKUpviUc4XEvFzQ3oUO2Qlrp4Dt7Aw2rSf6ngann+7igr7e9e5qob/96jcYSNz+g4e2jdnbE6/0bn46px+2f0Gqe/SqO9X///lXRr/9lSmCwcCT9sE7TwunIJzyLZZflCepoa4EJFjIJTzJ+vZ3aY/q9TdluIpx6J9yC9E5LjIXxGrP7nVpaB4y1RV6e9q/t8JzpVE3y8T891KnmRvsOm+ik717SbBh23/5ttNyks2B0t8Tel86nxOF8fLoeB8+HV38FN2/100PXAl6DS0XbAOtMFlQChbWhQ+mUP2v+6DDKFpE/QrweU34XfP1PP3XO+e6T94ZE6/3MFjcAnG9/6oH8LLt8PbrLMl7NpHzH+h2CKfV9UDgsARbLKv1E291UaNKVVPEPi9aHZ4msrBl/3ybd8llWPHfJk7rO/I7P6Dx6o3s9t+tax+5WM7GywfRJ+umw1yRg/6FS0byJyBLZYPpc8Xa0VRv+oUmjoZ4vgtTfl/hlKeblBXN2vkH2Kr9pncrKVbaeSbUtX66iqUGeVc6iqozo9EfVRMwxnYFvwQTs58uTkDc0b+c0OUGtuWj6lKC9pbPspQmwPlL1jzq4T+XjfDoq196joZq64X47y6WRGcM/CGbG/Qj/8HaCQSuijDBAA=",
3727
- "debug_symbols": "tV3djh03znwXX/uiKZKSmFdZLIIk610YMJLAmyzwIci7f/pjsT3GkXv6jG+smvGcKolSsdWS+vRf7/714ec///Pjx1///dt/3/3wj7/e/fz546dPH//z46fffvnpj4+//dp++9e7o/9D8u6HSn+/f0fjp9x+OtpPqf/E7Sd+/47LLOosbBRyzIJm0f5eW8GzkFnoLBpLbkWZRZ2FjUKPWdAs0ix4FjILncVk0cmik0UnS54sebLk9n/l/bvSfqqtaJx0tJJXKatstEStzKssq6yrtFnWY5W0yrRKXqWscvHVxVcXX1181j+fWtn/vkXM+t+32lpeZf/7Vm2rq7RZ0tErUDsgB70K1gE76KTSQWNNRwfZQXFQHdgCtJpGRA6SA3YgDtRBdlAcVAcrZpScOTlzcubkzCnPgFCyGRHiY4aCmBykFQRmB7KCwOogryD0YTpBXdFgb2kfrBOQg+SAHXhLxVsq3lLxloq3VLyl6i1Vb6l6S9Vbqs6szqzOrM7ch/CIRuYVjSwrCFkd5BWEXBzUFYRsC5RjBaEP/wnSikbxlnYLTOCjpfhoKT5a3AbkPiA3ArkTyK1A7gVyM5C7gdwO5H4gNwRVZzZnNmceJunRGK7o0Ri26EEYvmggDV+UDshBmkFIwxcDyAxC6r6YIM9oJPdFcl8k90WiwwE5aMz9090WiToQB+ogOygOZo5KNJNUSscqaZVplbxKWaWuMq+yrHLxpcXHi48XHy8+XnzdDz0sffD3YIyxnzpIDtiBOFAH2UFvDndQHdgCfexPQA6SA3YgDtRBduDM6szqzNmZe0pP2kFywA46T29nH/upN7SP/d5LfeiPHuhDfwLvt+L9NoZ+j8oY+gMUB706g8cW6EN/AmeuzlyduTpzXSOC+7jk1EFy0P6Y+yW0j8sJ1EG/1EoHxUF10C+4rcXcx+UE5CA5YAfioDOXDrKD4qAzHx2syHEfmhOQg+SAHYgDdZAdlAX6kBwlzVhyH5MTsANxoA6yg+Jg9QDz6gGWwwE5SGNUcx/Do5RV6irzKssq6yptlnqskmeq4T5SefxGHWQHxUF1YAv0kTpB75NesT5SJ2AH4kBnNuORyQcoDqqDdTXkkckHIAfJATtY11AuXsPiNSxew+o17IN3guSAHXgN++CdIDsoDryG1WtoXkPzGprX0LyGPt1h87abt31k8tRnkquGcpCD5IAdiAN1kB2sGspwzAC2wHDMAKuGQskBOxAH6iA7KA6qg9V2GfOZXvnkNUxew+Q1TF7DVBxUB6t3hL2GTA6SA3bgNWSvIXsN2WvIXkP2GsrhwNsu3vbukdLL5TyR4qA6sAVGkh+AHCQHPL0oI8kPoA6yg2k/0brKaT/JxypplWmVvEpZZbdzux/hcXfSPizj4r1KWmVaJa9SVqmrzKssq6yz7IEVnTc4o2y/12Pe1CituxpatzW07mvSurFJ85ZmlP1zZd7GaJ33MaPkVfbP2byVGWW/ssu6mbF5N1OOeQMzyvb50vR6MEYpq9RV5lXaLHuGKP0eTvweruT2k/pPMiZyq+xtH1OrVvKKJbe/zvhsmf9brP22jPvAPspmeOjv9ku/i/zxj88fPvQ/ON1WtpvN33/6/OHXP9798Oufnz69f/e/nz79Of7ov7//9Oso//jpc/vf1s4Pv/6rlY3w3x8/fejo7/fx6ePxR7Wk9eFMBR9v89qrBNJtMAjaAAWB0hefT5vPV/+8pqh/m45frkBGBSw/qoA8/ny7K2QPYMcEDtZ0lcRS8lo0KPcoTJyiTSduUbAeoMj5FkVLRU6hx+Na2FsE1J4PqD0fUHs+oPZ8QGk7RJNGRNts+DGLblkoSM4hlVdw9Mvo4mja9zhyAUc93oBDH3LsOkaZ0DEl3TLLRYpNLTRpQv4zDoqaL1Nwn0JMijZXv0ehGRTnLnlBkXaDVNSr0VZ5+B4HkdejwbictCnvKzg4gUPoIcc2j9awvR33UnG2oHhs2H1LRNCSfDxsCW+ujtXQkkMfM9Bjhoz8lVXuMZi7pBz5HkMNhnKLoSTPF0X4XiRLRSTrY4b8vEPs+ZFpz4/MXSiSj8sq9TRp/NIcG4Kc3ea56B2CcvigLHTcI/AkUdLDGmw+3xKt92WDcVlvt9CXKRQz1wblFkVmH9ZtaeQxhWxGZdECc6kFB305A5eyCwYRgnGaab3sj7qhONCjbZFPHlLs5p1t7yYy/5H1UVO2ATUEtJDe6pNSDRRWblHU4i5v8DFFz8xPdqvK092q+nS3av7O3WqYE7RltHqrTwxpk63eGhltdc5r0dbn8kOKfDzdrZme7tacnu7WzN+3W9vipiKg/DgJZ30+oPn5gJbnA1q/d0BPI1RuDnJk0LZmzLesxoT013ZhHlKU9HS3Fn66W4s83a1Fv2+3GinWUujGZMcwb7XyOA7feWwmi+nSQelUjcvzVjooVkBOyzlt2/zy1FcL5r5t8hUU9OUcvqbdPVnCBFzuVKLtP3uHtN1lflwJ2XEcwXGahNcvF07rZmjWWOerbT0m7iRaKv6CYzf7LJhHl3qacH3FsUueWEKR01W1LZl9ybAZnylhzpaaUR9zbKefOYb4aYLwqnoUrH+0jfbjIYdtLu9UivuEij1ui6XtoiXWteothrbYmMJqj6NhstsaQN6SelpsJLseDDuwXtnWkR9WY2s281okPSeNF2azsouG1lg3zacb90KvICnlOC2c5kckx3atULDQp48b09btd1e1qAgflfVRRb7BUism5XSeD7+KpS334SpNdLrfuh4UidX1tpv8OKfvriyMNEbt9iC2oV4szx+bdNo2dJHH8ikVvlwWP3Y3S63+WDNsmWwT1O39PHxHJwq92ZbTxOertmwSasH1vpTTzdKrIhodW/hxLWiTQVKbgca1IdXTHueLeFB6/lJJxM9fK2m3l3TtYkm7zZerV8uxmP/s5XJPwpHeW99sSOqzF7stxdWrHaXj6cvd1bYUvdm7F+cglPj5SQglebpjLlLs4pHkLfq2PN+325henMvsU2LBprjUU+++TIm7nRAqgl26UuThxW7PUcFRT435imOTVFP2nJrqqRb8goF3u6/YTmm7r/nRXSnxZnzkgvGRy3k7pL6iHhnbU21TQJ/nOO1xvY4Dm1ya7SZH3CE3eLMt9QDHeaL7FUfa9S32LY/j4eiQ7Z2UKsZ5fbxeS7KrRux1aa71DUg2ewp7koKItC7SNyBRud0cBclpAvFakuN5kjBva47dJaFyjWQ32GLIU+XNYFN6g8F2mWQ32LYkVwfbZZLdYPtGc64Ntm+QHM+TXB1se5I3GWzGMZU4bpIY1hLIlN6AJOc3ICn0BjG5S5LiXFo6n217JUnFitNh9XZNcpDcHCdp3EpOkja/vUuCzddE2+vOviYcJPkuSUVz0mYbmMqOpOC4Xdompd32lHDBLhnvemdLIhj2Isx3SXCERGQX2C2JSpwCz3djkgU1yfluc+LiJbnSG5CYvkFzbpMU7Fi1FSx6AxK5W5OYn0jdpYK6m9djVSCfj23V11QDG4lS86Ytu42r56uhR9xsHVLuhVQjRetxd6y2T+JW6bibSc4kLdE+35z7JISFUqW7Y/ULkruZRBOufe1WcnOx2G1hvcFISxoPyGzOgrXZ09PV2F71sPacatpcJqxudwWQQ/LpWvNy8+k6hz3k2DbGYonTNperdNB2FbzGvkB+tKSXjt0KVpykTfU0hf6Kg3e7Vzhj0uYD+R4Hx0EqPh8oeBUH2Rtw0NMcglUbkXozHop7gbZ9ZY85bNe3mBO1vn14TDrRbu85B0dWfcyxvTnS033NcYsjxRp4Op8L+4rj2Wv/N2oROegwelwL/a61oNj9Sue1yfIqDn4DjuNpjvBbYn08NtJ26xvnI9rNF9/jEMYNvMhbcJSbHIoDYpLzXQ6c0pBKz7flLoceaIvS8TwH3+WQ4MjymMOede2+FnAc5Y1bmJ7OHdt8XpA78iaDMT+fz3ccV/M5P51J97W4ls+5fNdaXMzn3+DgN+A4nua4mM93uxlX8/mW42I+v85RbnJcy+ff4LiUzy+35S7HxXx+mYPvclzL5/p0Jt3X4lo+V/6u+bwolvuLPY7n7hGpq37bclz023WOcpPjmt++wXHJb5fbcpfjot8uc/Bdjmt+y88uQ32jFtf8lp9dhdqvl8QRqLaGY7fWXHicJx4cfF6mfB2HxKHj84nhmxzpdELl5ZGw/UKWxUHszeOqab/CeOkQVNo9K3XxENS+HtcOQV3neHwI6hsclw5B7TmuHYLac1w8BLUbIG2QKQbqdiV8R5LwVCCndHdnPOG8b0rl7gYu4xhlW3OVNyDZbTHsTpflw8dZPh3nfnG6LO02oZp3Jbx7+iqH48UY2T0+1TYmkBDl9LQl5xdfM7J7fiql2FtP5fzFQC+bszsCneP4xHlb/GsS2+2ZYsvUHn+50DcigsOpSc7fyfMyIrvHhq4e10+7R6CuHtdPtnsI9dJx/bTbg7p6XD/Z9jHUa8f19yQXj+un3WNQ106Fp/2TVNeOdDeL7naiLx3pvtqWojd7N8eywflq9ZKEj/R8x/Bu0+Rax1yl2MZjZxirMMzdkF58AoJ3z1BdfQKCj/p8SHcUuFBZyvcortqFd1sNF+2yj+nFJyC2110+zvPu9PC6y7unqK5eIHi3F3X1AsG7R6CuXSCYyvMXCN4+AnXxArGvyVXnbZf6rzov0dPO21Fcts3uoZ+rttkG5E1skzRsczrO9pVtUt7ee+Prlc6ne14c3uBUnt7/2HJc3P/gp/ekvlGLS/sf/PSe1L4W1/Y/vsXBb8BxPM1xbf+Dt9/Sd209ds9xbT32FRzlJsel9dhvcVxZj73elrsc19Zjr3PwXY5L67HjGfrnXLuvxaX1WJan9073FwXmuCjkxxeF3ff26YFDTnqclh9eXhT2HDjApkd9eLKQd5tSF08nvoLj4enEy0Hl4/HCEOv223hxpW3mq48bo9tF3RKLuuUeR42vj62n7zx9FYfhpGU5kt3iKBWr/qWevhX4K47tN/zE0UJqqaS+BQvRvfYYIybn56Zex5FycNzr32o4JV1NH/dNlreI6ytYHsf1eH4Rk3ff5dc2Lwz7B+fvSL9ai6I4Sdsq8fj7aMYX+T6+lToKlrkL0cOvHOKy/fKjS98SxuUNFlO5vMFiKpenF1O5vMFiKpc3WEz9RgdTfP9BOe/LfNXBu6/6iYPO50ve9fd/qCpGu55vYl4O1mK7NZmL3yj1DZZa4ysCjdNNlrjB7N9Ldb8ul77das/yBt9upYovC2wd9PjLArff943HgyofLyj+2X786ZePn798IWp/A1TvjP4WnH4/1d+ZM8q6Sptlf2dOX7Ht7x8aZX89oM33D41S+uoJzRcQTdBf2NQXkfsriCaoDmx+aLz9sv9ivP1ygPHq0v6eovHu0jpfWDSBOhjvVzzmO4wm6MTjBXS2wHgT1ADkYLy9qs43G00gDsY7pmi+tnWC4qA6sAXG2y8HIAfJATsQB86szqzOrM6szpydOTtzdubszNmZszNnZ87OnJ05O3Nx5uLMxZmLMxdnLs5cnLk4c3Hm4szVmaszV2euzlyduTpzdebqzNWZqzObM5szmzObM5szmzObM5szmzObM8/Xy05EQAmIgQRIgTJQAapA0CBoEDQIGgSN+So29bfNTpSBClAFMkfjlbMTEVACYiBoJGgkaCRoJGgkaDA0GBoMDYYGQ4OhwdBgaDA0GBoCDYGGQEOgIdAQaAg0BBrTtMXfWTvQtG3xt9b2Sfl8be1EDCRACpTx2QIEjenf6i+0nQgaGRoZGhkaGRoZGhkaGRoZ7ShoR4FGgUaBRoFGgcY0dF3vvF2oAqEdFRrT1cVffDsRAwkQNCo0KjQqNCo0DLEytMPQDkM7DBrT4wMhVoZYGWJlrjFflzsRASUgBhIgBcpABcg10uH9kegAIqAEBA2CBkGDoEHQoAqEdiS0I6EdCRqJgQRIgTIQNBI0EjQYGgwNRqwY7WC0g9EOhgYXIMSKEStBrAQaAg2BhkBDoCGIlaAdgnYI2gGfJ0V/KGKliJUiVvB5UmgoNBQa8HmCzxN8nuDzBJ+nDI2M/oDPE3ye4POUoVGgAZ8n+DzB5wk+T/B5gs8TfJ4KNAr6Az5P8HmCz1OFRoUGfJ7g8wSfJ/g8wecJPk/weTJoGPoDPk/weYLPk0HDoAGfM3zO8DnD5wyfM3zO8DkfrsFHAapAHiuGz5mgQdCAzxk+Z/ic4XOGzxk+Z/icEzQSASUgBhIgaCRowOcMnzN8zvA5w+cMnzN8zgwNViDECj5n+JwZGgIN+Jzhc4bPGT5n+Jzhc4bPGddzxvWc4XOGzxk+Z1zPGddzhs8ZPmf4nOFzhs8ZPmf4nDM0MvoDPmf4nOHz9b7jihceV7zxuOKVxxXvPK546XHFW48HQjvg8/kq5KFR0B/wOcPnDJ9zhUaFBnzO8DnD5wyfM3zO8DnD5+vFyAVvRh4IsYLPGT5fb0cen4UGfM7wOcPnAp8LfC7wucDncriGHAqUgQpQBYIGQQM+F/hc4HOBzwU+F/hc4PP1GuWC9yh3BJ8LfC7wuSRoJGjA5wKfC3wu8LnA5wKfC3wuDA1mIMQKPhf4fL1rueJlyxVvW6543XLF+5YrXrg8ENoBnwt8LgINQX/A5wKfC3wumLcL5u0Cnwt8LvC5wOcCnwt8LvC5ZGhk9Ad8LvC5wOeCebtkaMDnAp8LfC7wucDnAp8LfC4FGgX9AZ8LfC7wuWDeLhUa8LnA5wKfC3wu8LnA5wKfS4VGRX/A5wKfC3wumLeLQQM+F/hc4HOBzwU+V/hc4XM9XEMPBhIgBcpABZ+tQNCAzxU+V/hc4XOFzxU+V4IGFaAK5LFS+Fwxb9cEDfhc4XOFzxU+V/hc4XOFz5WhwQSEWMHnCp8r5u3K0IDPFT5X+Fzhc4XPFT5X+FwFGoL+gM8VPlf4XDFvV/hccT1XXM8VPlfM21Whgftzhc8VPlf4XHE91+Hz/tpBHT7vq/w6fD5eUT583r+MUofPJ8pABagCmaPh8/5wlQ6fT5SAGEiAFGho9HYMn/eNFB0+n8gcDZ9PREAJiIEESIGGxngBewGqQOZo+HwiAkpADCRAXaPvDujwed/f0eHzibpG37DR4fOO8vD5RASUgBhIgBQoAxWgCgQNggZBg6BB0CBoDJ/3XaE8fD7R0MgdVaCu0dfb8/D5RF2jP/WQh88n6hr9sY48fD5R1+jL6nn4fKKuYeN/K1DX6Cvlefh8IgJK41hcR9xR/0T3eeqr5Ln7fKEMVPr5rdRR7Wh81jrqNe0+T31LM3efpzTWmxMQj620jgRIxwM+HWWgMh7u6Khr8GC28QhMX7buGjIWsLtGP1GSu88X6hp98y93ny/UNfoRitx9vlDX6C8jzN3nC3WN7sHcfb5Q1+iOyt3nC7FHLYtHLSNWGbHqPl+oetSyedTK4VHrPp9RK4hV9/lCiFVRIMSqFKDqUSvmUes+n1Gr5FGriFX3+UKIVVUgxKoWIMSq+3wiQ6yMgBCr7vOFxKNm6lEzxMoQq+7zhWxFrRzHilo5aEWtdJ+PqJXDY1W6zxfyWJUjA3msylGBbEWt0LGiVrrPR9QKpRW1Qh6r0n2+kMeqUAbyWBWqQB6r0n2+kMeqpATksSrd5wvp2ODvqGv0/FK6zxeqQOao+3whAkpADCRACgQNhgZDg6Eh0BBoCDQEGgINgYZAQ6Ah0BBoKDQUGgoNhYZCQ6Gh0FBoKDQUGsPnPReX4fOJEtDQ6L0wfD6RAmWgAlTxWXNUoDF8Pv5u+HwiaBRoFGgUaBRoFGgUaFRoVLSjoh0VGhUaFRoVGhUaw+cTmaPh84nQDoPG8PlEAqRAGQgaBg1zjXocQASUgBhIgBTINerw+UQVyGNV6QCCBkGDoEHQIGhQBipAFQjtSNBIBJSAGEiAoJGgkaCRoJGgwYgVox2MdjDawdBgBUKsGLFixIqhIdAQaAg0BBqCWAnaIWiHoB0CDUF/KGKliJUiVgoNhYZCQ6Gh0FDEStGOjHZktAM+rxn9kRGrjFhlxAo+rxkaGRoFGvB5hc8rfF7h8wqf1wKNgv6Azyt8XuHzWqFRoQGfV/i8wucVPq/weYXPK3xeDRqG/oDPK3xe4fNq0DBowOcVPq/wucHnBp8bfG7wuR2uYYcCZaACVIGgQdCAzw0+N/jc4HODzw0+N/jcCBrk/WHwucHnBp9bgkaCBnxu8LnB5wafG3xu8LnB58bQYAZCrOBzg8+NocHQgM8NPjf43OBzg88NPjf43AQagv6Azw0+N/jcFBoKDfjc4HODzw0+N/jc4HODzw3Xc8P13OBzg88NPjdczw3Xc4PPDT43+Nzgc4PPDT43+NwKNAr6Az43+NzgcyvQqNCAzw0+N/jc4HODzw0+N/jcKjQq+gM+N/jc4HMzaBg04HODzw0+N/jc4HM6YPQGKaDLNMgBJaAGzAFLMNSAoUahRqEG0zfIASWgBgw1KgFrQAOE+RsMtRRqKdRSqKVQQwpoMNqWom0p2sahxhQwIskRSY5IcqhxqHGocahxqElEUqJtEm2TaJuEmkS/SURSIpISkZRQ01DTUNNQ01DTiKRG2zTaptE2DTWNfssRyRyRzBHJHGo51HKo5VDLoZYjkjnaVqJtJdpWQq1Ev5WIZIlIlohkCbUSaiXUaqjVUKsRyRptq9G2Gm2roVaj32pEskYkLSJpoWahZqFmoWahZhFJi7ZZtC1yCR1Qo4MCpoAcUAJqMOSAJWANGGqRSyhyCUUuocglRKFGGjAHLAFrwFBLoRa5hCKXUOQSilxCkUsocglFLqEUagn9RpFLKHIJRS4hDjUOtcglFLmEIpdQ5BKKXEKRSyhyCUmoSfRb5BKKXEKRS0hCTUItcglFLqHIJRS5hCKXUOQSilxCGmoa/Ra5hCKXUOQSyqEWuYRytC1H2yKXUA61HGo51CKXUOQSilxCJdo2c4kN2NXqOCA6ckk/o07jAN844k3jBJ/DGtAARy5ZkAKmgBxQAmrAUKuhVkOthpqFmoWahZqFmoWahZqFmoWahZpBbRzsc0gBU0AOKAE1YA5YAtb+QMAxoAH2XOKQAqaAHFACasAcsAQMNQq1FGop1FKo9VzCfV2VxoE/h10tjVb0XOKwBOxq/bQ7jVN/zIOs5xLmwdBzCa+Tw12tb6jROPnnsKv1L22icfbPYVeTwdtzicO6nuKhcf6PdfxtzyUOKWAK2NV0qPVc4lAD5oBdLY9W9FzisKvledb5CEgBcQg74bw+jeOA3B8noXEe0OHYWBy8PZdwGW3ruYTr/K0B9lzCw7HjVKDDFJADdrVh6XEy0GEOWAIOtVGdnkvGU2A0jgc6pIDroQwaBwR5DuoiATVgDljwqQpkjmoo1dGu/pzN/376/PGnnz99+O+7H/7qT5n8+esv/kRJ+/GP//vd/+fnzx8/ffr4nx9///zbLx/+9efnD/3pk/5/747x9En79x9tPyBRfzqF4lf2Pkn/VVp/+g8xet827f/5/h33n9peppTafhp/Li1pSpX+I/Ufq7YfS/88g7KtGBfzv2hdVlP/f/laUvGrZpxk/Vc5flXe8/hg6b/i+UcsqMjxXvSff/eHbf4f",
3727
+ "debug_symbols": "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",
3728
3728
  "verification_key": "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"
3729
3729
  },
3730
3730
  {
@@ -3976,7 +3976,7 @@
3976
3976
  }
3977
3977
  },
3978
3978
  "bytecode": "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",
3979
- "debug_symbols": "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ImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiXZJup+oIIGDtt42GRHm+iJedfRE/vCnO04cdjGUyM72kRPHOs2HkHZ0SZ6ooFpS3FmyYnDNt7PsmwTPTHvcU4csweRFXIO5EQBFTTQwQAb2BfmtOaJ2Dq2jq1j69g6to6tY+vLlm2iEwtYQQEVNNDBAJftaAgdr7fZ0fo53mmzo/VzdPfb0fp5YoANzOUde+ho/TyxgBUUcNjGu0Z2tH6e6OCwjdeO7Gj9PLEvzCnQEwtYQQEVNNBBbIJNsCk2xabYFJtiU2yKTbEpNsVm2AybYTNshs2wGTbDZtgMm2NzbI7NsTk2x+bYHJtjc2yBLbAFtsAW2AJbYAtsgS2wNWwNW8PWsDVsDVvD1rA1bA1bx9axdWwdW8fWsXVsHVvH1pftaP08sYAVFFBBAx0MsIHYCraCrWAr2Aq2gq1gK9gKtoKtYqvYKraKrWKr2Co2ssTJEidLnCxxssTJEidLjtbP8QqjHa2fJzoYYAP7wiNLDixg2ixRQAXTJokOBpi2SOwLjyw5UED+XePfdf7dIwkOrCAVjiToiQY6OJZsvApnR+PmiX1hJsGJBayggAoa6CC2wJZJ0HP7ZhKcWMAKCqiggQ4G2EBsHVvH1rF1bB1bJkHP4yzHfM8dm2M+8WjRPLGAWVcTBVTQwDyjW2KADewLc8yfWMAKCqhgbp0DG9gX5ug+MdfCEysooIJ2fhLZshlzYoAN7Avzy9onFrCCuXUi0cEAG9gX5jg+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"
3979
+ "debug_symbols": "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"
3980
3980
  },
3981
3981
  {
3982
3982
  "name": "sync_private_state",
@@ -4134,7 +4134,7 @@
4134
4134
  }
4135
4135
  },
4136
4136
  "bytecode": "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",
4137
- "debug_symbols": "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mnFeM85rxnnNOK8Z5zXjvGac14xzrxKa1UmSNKknjaSZZEErzi8qSTUpPXp69PTo6dHTo6dHT4+RHiM9RnqM9BjpMdJjpMdIjxXn86zFtKAV5xctj+5Uk1qSJGlSTxpJM8mCVpxflB6WHpYelh6WHpYelh6WHhYeXlR0UUmqSS1JkjSpJ42kmZQeJT1KepT0KOlR0qOkR0mPkh4lPUp61PSo6VHTo6ZHTY+aHjU9anrU9Kjp0dKjpUdLj5YeLT1aerT0aOnR0qOlh6SHpIekh6SHpIekh6SHpIekh6SHpoemh6aHpoemh6aHx/l0Gkkz6eFhZdGK84tKUk1qSZKkST1pJM2k9BjpMdJjpMdIj5EeIz1Geoz0GOkx0mOmx0yPmR4zPWZ6zPSY6THTY6bHTA9LD0sPSw9LD0sPSw9LD0sPSw8LDy9cuqgk1aSWJEma1JNG0kxKj5IeJT1KepT0KOlR0qOkR0mPkh4lPWp61PSo6VHTo6ZHTY+aHjU9anrU9Gjp0dKjpUdLj5YeLT1aerT0aOnR0kPSQ9JD0kPSQ9JD0kPSQ9JD0kPSQ9ND00PTQ9ND00PTQ9ND00PTI+NcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84147xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec9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rw987yi0srIj4z2Jzs3QtPdOhMHZ6nsn0viIadO3TmTkjdCQ/o6ACVvDvncSRxYIPi6rr8eE7bbp/nx028Gmwe81RA5tG/phS74ncK92dTuq86Wm8ry89/OnYLbJn68v92ZvScws1SzPffkVCRt8K/Uo70g8FhgbDyvaW0fBo731oeL3JIyvlZe3TuSRaNlhw947ipZTtSKHvCUhT7s4PK9O/iRhu5ehvuEa1nIBu7TxXmPIkWfyXGT+bnu+J9EqDxbq81KAlfsSuUVhe94n/V2JpxvOL0nklbTVp7z3FYmWNyMPOt6SkHzO234oCvrKUfTskR+G1rsS73UqKxHteXr0pbZgQwxp73WqNLZbauM9icLuU/pmp3Z2felvHcX6Tjy3IfKWxNPn6udzadRPErZ7yPRYtOA7i/0p833h4Xs+2nmgvncm+erlYwF9vifRKYd4L0jKzCW/x/1defNEWGo76scS5d2jGEi8Fe2P6zltIePjo/i5U//n43//9K9/+ce//PXv//qn//jL3//274/f/O8l9o+//Ol//fXP1//+n//8278+/e1//L//Fn/zv/7xl7/+9S//91/+7R9//9c//+///Mefl9L6u9+O6z//YxyP9ejxuKP8n//0W1n/v2YK43F9f/x/879/hODjH/nfr1/oazOOXuqx/sB/Y/3B4z/jf/73OuT/Dw=="
4137
+ "debug_symbols": "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mnFeM85rxnnNOK8Z5zXjvGac14xzrxKa1UmSNKknjaSZZEErzi8qSTUpPXp69PTo6dHTo6dHT4+RHiM9RnqM9BjpMdJjpMdIjxXn86zFtKAV5xctj+5Uk1qSJGlSTxpJM8mCVpxflB6WHpYelh6WHpYelh6WHhYeXlR0UUmqSS1JkjSpJ42kmZQeJT1KepT0KOlR0qOkR0mPkh4lPUp61PSo6VHTo6ZHTY+aHjU9anrU9Kjp0dKjpUdLj5YeLT1aerT0aOnR0qOlh6SHpIekh6SHpIekh6SHpIekh6SHpoemh6aHpoemh6aHx/l0Gkkz6eFhZdGK84tKUk1qSZKkST1pJM2k9BjpMdJjpMdIj5EeIz1Geoz0GOkx0mOmx0yPmR4zPWZ6zPSY6THTY6bHTA9LD0sPSw9LD0sPSw9LD0sPSw8LDy9cuqgk1aSWJEma1JNG0kxKj5IeJT1KepT0KOlR0qOkR0mPkh4lPWp61PSo6VHTo6ZHTY+aHjU9anrU9Gjp0dKjpUdLj5YeLT1aerT0aOnR0kPSQ9JD0kPSQ9JD0kPSQ9JD0kPSQ9ND00PTQ9ND00PTQ9ND00PTI+NcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDLOJeNcMs4l41wyziXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84141wzzjXjXDPONeNcM84147xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec947xnnPeM855x3jPOe8Z5zzjvGec9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"
4138
4138
  },
4139
4139
  {
4140
4140
  "name": "public_dispatch",
@@ -4531,31 +4531,31 @@
4531
4531
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/oracle/version.nr",
4532
4532
  "source": "/// The ORACLE_VERSION constant is used to check that the oracle interface is in sync between PXE and Aztec.nr. We need\n/// to version the oracle interface to ensure that developers get a reasonable error message if they use incompatible\n/// versions of Aztec.nr and PXE. The TypeScript counterpart is in `oracle_version.ts`.\n///\n/// @dev Whenever a contract function or Noir test is run, the `utilityAssertCompatibleOracleVersion` oracle is called and\n/// if the oracle version is incompatible an error is thrown.\npub global ORACLE_VERSION: Field = 5;\n\n/// Asserts that the version of the oracle is compatible with the version expected by the contract.\npub fn assert_compatible_oracle_version() {\n // Safety: This oracle call returns nothing: we only call it to check Aztec.nr and Oracle interface versions are\n // compatible. It is therefore always safe to call.\n unsafe {\n assert_compatible_oracle_version_wrapper();\n }\n}\n\nunconstrained fn assert_compatible_oracle_version_wrapper() {\n assert_compatible_oracle_version_oracle(ORACLE_VERSION);\n}\n\n#[oracle(utilityAssertCompatibleOracleVersion)]\nunconstrained fn assert_compatible_oracle_version_oracle(version: Field) {}\n\nmod test {\n use super::{assert_compatible_oracle_version_oracle, ORACLE_VERSION};\n\n #[test]\n unconstrained fn compatible_oracle_version() {\n assert_compatible_oracle_version_oracle(ORACLE_VERSION);\n }\n\n #[test(should_fail_with = \"Incompatible oracle version. TXE is using version\")]\n unconstrained fn incompatible_oracle_version() {\n let arbitrary_incorrect_version = 318183437;\n assert_compatible_oracle_version_oracle(arbitrary_incorrect_version);\n }\n}\n"
4533
4533
  },
4534
- "229": {
4534
+ "231": {
4535
4535
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/array/append.nr",
4536
4536
  "source": "/// Appends the elements of the second `BoundedVec` to the end of the first one. The resulting `BoundedVec` can have any arbitrary maximum length, but it must be\n/// large enough to fit all of the elements of both the first and second vectors.\npub fn append<T, let ALen: u32, let BLen: u32, let DstLen: u32>(\n a: BoundedVec<T, ALen>,\n b: BoundedVec<T, BLen>,\n) -> BoundedVec<T, DstLen> {\n let mut dst = BoundedVec::new();\n\n dst.extend_from_bounded_vec(a);\n dst.extend_from_bounded_vec(b);\n\n dst\n}\n\nmod test {\n use super::append;\n\n #[test]\n unconstrained fn append_empty_vecs() {\n let a: BoundedVec<_, 3> = BoundedVec::new();\n let b: BoundedVec<_, 14> = BoundedVec::new();\n\n let result: BoundedVec<Field, 5> = append(a, b);\n\n assert_eq(result.len(), 0);\n assert_eq(result.storage(), std::mem::zeroed());\n }\n\n #[test]\n unconstrained fn append_non_empty_vecs() {\n let a: BoundedVec<_, 3> = BoundedVec::from_array([1, 2, 3]);\n let b: BoundedVec<_, 14> = BoundedVec::from_array([4, 5, 6]);\n\n let result: BoundedVec<Field, 8> = append(a, b);\n\n assert_eq(result.len(), 6);\n assert_eq(result.storage(), [1, 2, 3, 4, 5, 6, std::mem::zeroed(), std::mem::zeroed()]);\n }\n\n #[test(should_fail_with = \"out of bounds\")]\n unconstrained fn append_non_empty_vecs_insufficient_max_len() {\n let a: BoundedVec<_, 3> = BoundedVec::from_array([1, 2, 3]);\n let b: BoundedVec<_, 14> = BoundedVec::from_array([4, 5, 6]);\n\n let _: BoundedVec<Field, 5> = append(a, b);\n }\n}\n"
4537
4537
  },
4538
- "232": {
4538
+ "234": {
4539
4539
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/array/subarray.nr",
4540
4540
  "source": "/// Returns `DstLen` elements from a source array, starting at `offset`. `DstLen` must not be larger than the number\n/// of elements past `offset`.\n///\n/// Examples:\n/// ```\n/// let foo: [Field; 2] = subarray([1, 2, 3, 4, 5], 2);\n/// assert_eq(foo, [3, 4]);\n///\n/// let bar: [Field; 5] = subarray([1, 2, 3, 4, 5], 2); // fails - we can't return 5 elements since only 3 remain\n/// ```\npub fn subarray<T, let SrcLen: u32, let DstLen: u32>(src: [T; SrcLen], offset: u32) -> [T; DstLen] {\n assert(offset + DstLen <= SrcLen, \"DstLen too large for offset\");\n\n let mut dst: [T; DstLen] = std::mem::zeroed();\n for i in 0..DstLen {\n dst[i] = src[i + offset];\n }\n\n dst\n}\n\nmod test {\n use super::subarray;\n\n #[test]\n unconstrained fn subarray_into_empty() {\n // In all of these cases we're setting DstLen to be 0, so we always get back an empty array.\n assert_eq(subarray::<Field, _, _>([], 0), []);\n assert_eq(subarray([1, 2, 3, 4, 5], 0), []);\n assert_eq(subarray([1, 2, 3, 4, 5], 2), []);\n }\n\n #[test]\n unconstrained fn subarray_complete() {\n assert_eq(subarray::<Field, _, _>([], 0), []);\n assert_eq(subarray([1, 2, 3, 4, 5], 0), [1, 2, 3, 4, 5]);\n }\n\n #[test]\n unconstrained fn subarray_different_end_sizes() {\n // We implicitly select how many values to read in the size of the return array\n assert_eq(subarray([1, 2, 3, 4, 5], 1), [2, 3, 4, 5]);\n assert_eq(subarray([1, 2, 3, 4, 5], 1), [2, 3, 4]);\n assert_eq(subarray([1, 2, 3, 4, 5], 1), [2, 3]);\n assert_eq(subarray([1, 2, 3, 4, 5], 1), [2]);\n }\n\n #[test(should_fail_with = \"DstLen too large for offset\")]\n unconstrained fn subarray_offset_too_large() {\n // With an offset of 1 we can only request up to 4 elements\n let _: [_; 5] = subarray([1, 2, 3, 4, 5], 1);\n }\n\n #[test(should_fail)]\n unconstrained fn subarray_bad_return_value() {\n assert_eq(subarray([1, 2, 3, 4, 5], 1), [3, 3, 4, 5]);\n }\n}\n"
4541
4541
  },
4542
- "233": {
4542
+ "235": {
4543
4543
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/array/subbvec.nr",
4544
4544
  "source": "use crate::utils::array;\n\n/// Returns `DstMaxLen` elements from a source BoundedVec, starting at `offset`. `offset` must not be larger than the\n/// original length, and `DstLen` must not be larger than the total number of elements past `offset` (including the\n/// zeroed elements past `len()`).\n///\n/// Only elements at the beginning of the vector can be removed: it is not possible to also remove elements at the end\n/// of the vector by passing a value for `DstLen` that is smaller than `len() - offset`.\n///\n/// Examples:\n/// ```\n/// let foo = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n/// assert_eq(subbvec(foo, 2), BoundedVec::<_, 8>::from_array([3, 4, 5]));\n///\n/// let bar: BoundedVec<_, 1> = subbvec(foo, 2); // fails - we can't return just 1 element since 3 remain\n/// let baz: BoundedVec<_, 10> = subbvec(foo, 3); // fails - we can't return 10 elements since only 7 remain\n/// ```\npub fn subbvec<T, let SrcMaxLen: u32, let DstMaxLen: u32>(\n bvec: BoundedVec<T, SrcMaxLen>,\n offset: u32,\n) -> BoundedVec<T, DstMaxLen> {\n // from_parts_unchecked does not verify that the elements past len are zeroed, but that is not an issue in our case\n // because we're constructing the new storage array as a subarray of the original one (which should have zeroed\n // storage past len), guaranteeing correctness. This is because `subarray` does not allow extending arrays past\n // their original length.\n BoundedVec::from_parts_unchecked(array::subarray(bvec.storage(), offset), bvec.len() - offset)\n}\n\nmod test {\n use super::subbvec;\n\n #[test]\n unconstrained fn subbvec_empty() {\n let bvec = BoundedVec::<Field, 0>::from_array([]);\n assert_eq(subbvec(bvec, 0), bvec);\n }\n\n #[test]\n unconstrained fn subbvec_complete() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n assert_eq(subbvec(bvec, 0), bvec);\n\n let smaller_capacity = BoundedVec::<_, 5>::from_array([1, 2, 3, 4, 5]);\n assert_eq(subbvec(bvec, 0), smaller_capacity);\n }\n\n #[test]\n unconstrained fn subbvec_partial() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n\n assert_eq(subbvec(bvec, 2), BoundedVec::<_, 8>::from_array([3, 4, 5]));\n assert_eq(subbvec(bvec, 2), BoundedVec::<_, 3>::from_array([3, 4, 5]));\n }\n\n #[test]\n unconstrained fn subbvec_into_empty() {\n let bvec: BoundedVec<_, 10> = BoundedVec::from_array([1, 2, 3, 4, 5]);\n assert_eq(subbvec(bvec, 5), BoundedVec::<_, 5>::from_array([]));\n }\n\n #[test(should_fail)]\n unconstrained fn subbvec_offset_past_len() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n let _: BoundedVec<_, 1> = subbvec(bvec, 6);\n }\n\n #[test(should_fail)]\n unconstrained fn subbvec_insufficient_dst_len() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n\n // We're not providing enough space to hold all of the items inside the original BoundedVec. subbvec can cause\n // for the capacity to reduce, but not the length (other than by len - offset).\n let _: BoundedVec<_, 1> = subbvec(bvec, 2);\n }\n\n #[test(should_fail_with = \"DstLen too large for offset\")]\n unconstrained fn subbvec_dst_len_causes_enlarge() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n\n // subbvec does not supprt capacity increases\n let _: BoundedVec<_, 11> = subbvec(bvec, 0);\n }\n\n #[test(should_fail_with = \"DstLen too large for offset\")]\n unconstrained fn subbvec_dst_len_too_large_for_offset() {\n let bvec = BoundedVec::<_, 10>::from_array([1, 2, 3, 4, 5]);\n\n // This effectively requests a capacity increase, since there'd be just one element plus the 5 empty slots,\n // which is less than 7.\n let _: BoundedVec<_, 7> = subbvec(bvec, 4);\n }\n}\n"
4545
4545
  },
4546
- "235": {
4546
+ "237": {
4547
4547
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/conversion/bytes_to_fields.nr",
4548
4548
  "source": "use std::static_assert;\n\n// These functions are used to facilitate the conversion of log ciphertext between byte and field representations.\n//\n// `bytes_to_fields` uses fixed-size arrays since encryption contexts have compile-time size information.\n// `bytes_from_fields` uses BoundedVec for flexibility in unconstrained contexts where sizes are dynamic.\n//\n// Together they provide bidirectional conversion between bytes and fields when processing encrypted logs.\n\n/// Converts the input bytes into an array of fields. A Field is ~254 bits meaning that each field can store 31 whole\n/// bytes. Use `bytes_from_fields` to obtain the original bytes array.\n///\n/// The input bytes are chunked into chunks of 31 bytes. Each 31-byte chunk is viewed as big-endian, and is converted\n/// into a Field.\n/// For example, [1, 10, 3, ..., 0] (31 bytes) is encoded as [1 * 256^30 + 10 * 256^29 + 3 * 256^28 + ... + 0]\n/// Note: N must be a multiple of 31 bytes\npub fn bytes_to_fields<let N: u32>(bytes: [u8; N]) -> [Field; N / 31] {\n // Assert that N is a multiple of 31\n static_assert(N % 31 == 0, \"N must be a multiple of 31\");\n\n let mut fields = [0; N / 31];\n\n // Since N is a multiple of 31, we can simply process all chunks fully\n for i in 0..N / 31 {\n let mut field = 0;\n for j in 0..31 {\n // Shift the existing value left by 8 bits and add the new byte\n field = field * 256 + bytes[i * 31 + j] as Field;\n }\n fields[i] = field;\n }\n\n fields\n}\n\n/// Converts an input BoundedVec of fields into a BoundedVec of bytes in big-endian order. Arbitrary Field arrays\n/// are not allowed: this is assumed to be an array obtained via `bytes_to_fields`, i.e. one that actually represents\n/// bytes. To convert a Field array into bytes, use `fields_to_bytes`.\n///\n/// Each input field must contain at most 31 bytes (this is constrained to be so).\n/// Each field is converted into 31 big-endian bytes, and the resulting 31-byte chunks are concatenated\n/// back together in the order of the original fields.\npub fn bytes_from_fields<let N: u32>(fields: BoundedVec<Field, N>) -> BoundedVec<u8, N * 31> {\n let mut bytes = BoundedVec::new();\n\n for i in 0..fields.len() {\n let field = fields.get(i);\n\n // We expect that the field contains at most 31 bytes of information.\n field.assert_max_bit_size::<248>();\n\n // Now we can safely convert the field to 31 bytes.\n let field_as_bytes: [u8; 31] = field.to_be_bytes();\n\n for j in 0..31 {\n bytes.push(field_as_bytes[j]);\n }\n }\n\n bytes\n}\n\nmod tests {\n use crate::utils::array::subarray;\n use super::{bytes_from_fields, bytes_to_fields};\n\n #[test]\n unconstrained fn random_bytes_to_fields_and_back(input: [u8; 93]) {\n let fields = bytes_to_fields(input);\n\n // At this point in production, the log flies through the system and we get a BoundedVec on the other end.\n // So we need to convert the field array to a BoundedVec to be able to feed it to the `bytes_from_fields`\n // function.\n let fields_as_bounded_vec = BoundedVec::<_, 6>::from_array(fields);\n\n let bytes_back = bytes_from_fields(fields_as_bounded_vec);\n\n // Compare the original input with the round-tripped result\n assert_eq(bytes_back.len(), input.len());\n assert_eq(subarray(bytes_back.storage(), 0), input);\n }\n\n #[test(should_fail_with = \"N must be a multiple of 31\")]\n unconstrained fn bytes_to_fields_input_length_not_multiple_of_31() {\n // Try to convert 32 bytes (not a multiple of 31) to fields\n let _fields = bytes_to_fields([0; 32]);\n }\n\n}\n"
4549
4549
  },
4550
- "236": {
4550
+ "238": {
4551
4551
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/conversion/fields_to_bytes.nr",
4552
4552
  "source": "// These functions are used to facilitate the conversion of log plaintext represented as fields into bytes and back.\n//\n// `fields_to_bytes` uses fixed-size arrays since encryption contexts have compile-time size information.\n// `fields_from_bytes` uses BoundedVec for flexibility in unconstrained contexts where sizes are dynamic.\n//\n// Together they provide bidirectional conversion between fields and bytes.\n\n/// Converts an input array of fields into a single array of bytes. Use `fields_from_bytes` to obtain the original\n/// field array.\n/// Each field is converted to a 32-byte big-endian array.\n///\n/// For example, if you have a field array [123, 456], it will be converted to a 64-byte array:\n/// [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,123, // First field (32 bytes)\n/// 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,200] // Second field (32 bytes)\n///\n/// Since a field is ~254 bits, you'll end up with a subtle 2-bit \"gap\" at the big end, every 32 bytes. Be careful\n/// that such a gap doesn't leak information! This could happen if you for example expected the output to be\n/// indistinguishable from random bytes.\npub fn fields_to_bytes<let N: u32>(fields: [Field; N]) -> [u8; 32 * N] {\n let mut bytes = [0; 32 * N];\n\n for i in 0..N {\n let field_as_bytes: [u8; 32] = fields[i].to_be_bytes();\n\n for j in 0..32 {\n bytes[i * 32 + j] = field_as_bytes[j];\n }\n }\n\n bytes\n}\n\n/// Converts an input BoundedVec of bytes into a BoundedVec of fields. Arbitrary byte arrays are not allowed: this\n/// is assumed to be an array obtained via `fields_to_bytes`, i.e. one that actually represents fields. To convert\n/// a byte array into Fields, use `bytes_to_fields`.\n///\n/// The input bytes are chunked into chunks of 32 bytes. Each 32-byte chunk is viewed as big-endian, and is converted\n/// into a Field.\n/// For example, [1, 10, 3, ..., 0] (32 bytes) is encoded as [1 * 256^31 + 10 * 256^30 + 3 * 256^29 + ... + 0]\n/// Note 1: N must be a multiple of 32 bytes\n/// Note 2: The max value check code was taken from std::field::to_be_bytes function.\npub fn fields_from_bytes<let N: u32>(bytes: BoundedVec<u8, N>) -> BoundedVec<Field, N / 32> {\n // Assert that input length is a multiple of 32\n assert(bytes.len() % 32 == 0, \"Input length must be a multiple of 32\");\n\n let mut fields = BoundedVec::new();\n\n let p = std::field::modulus_be_bytes();\n\n // Since input length is a multiple of 32, we can simply process all chunks fully\n for i in 0..bytes.len() / 32 {\n let mut field = 0;\n\n // Process each byte in the 32-byte chunk\n let mut ok = false;\n\n for j in 0..32 {\n let next_byte = bytes.get(i * 32 + j);\n field = field * 256 + next_byte as Field;\n\n if !ok {\n if next_byte != p[j] {\n assert(next_byte < p[j], \"Value does not fit in field\");\n ok = true;\n }\n }\n }\n assert(ok, \"Value does not fit in field\");\n\n fields.push(field);\n }\n\n fields\n}\n\nmod tests {\n use crate::utils::array::subarray;\n use super::{fields_from_bytes, fields_to_bytes};\n\n #[test]\n unconstrained fn random_fields_to_bytes_and_back(input: [Field; 3]) {\n // Convert to bytes\n let bytes = fields_to_bytes(input);\n\n // At this point in production, the log flies through the system and we get a BoundedVec on the other end.\n // So we need to convert the field array to a BoundedVec to be able to feed it to the `fields_from_bytes`\n // function.\n // 113 is an arbitrary max length that is larger than the input length of 96.\n let bytes_as_bounded_vec = BoundedVec::<_, 113>::from_array(bytes);\n\n // Convert back to fields\n let fields_back = fields_from_bytes(bytes_as_bounded_vec);\n\n // Compare the original input with the round-tripped result\n assert_eq(fields_back.len(), input.len());\n assert_eq(subarray(fields_back.storage(), 0), input);\n }\n\n #[test(should_fail_with = \"Input length must be a multiple of 32\")]\n unconstrained fn to_fields_assert() {\n // 143 is an arbitrary max length that is larger than 33\n let input = BoundedVec::<_, 143>::from_array([\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,\n 25, 26, 27, 28, 29, 30, 31, 32, 33,\n ]);\n\n // This should fail since 33 is not a multiple of 32\n let _fields = fields_from_bytes(input);\n }\n\n #[test]\n unconstrained fn fields_from_bytes_max_value() {\n let max_field_as_bytes: [u8; 32] = (-1).to_be_bytes();\n let input = BoundedVec::<_, 32>::from_array(max_field_as_bytes);\n\n let fields = fields_from_bytes(input);\n\n // The result should be a largest value storable in a field (-1 since we are modulo-ing)\n assert_eq(fields.get(0), -1);\n }\n\n // In this test we verify that overflow check works by taking the max allowed value, bumping a random byte\n // and then feeding it to `fields_from_bytes` as input.\n #[test(should_fail_with = \"Value does not fit in field\")]\n unconstrained fn fields_from_bytes_overflow(random_value: u8) {\n let index_of_byte_to_bump = random_value % 32;\n\n // Obtain the byte representation of the maximum field value\n let max_field_value_as_bytes: [u8; 32] = (-1).to_be_bytes();\n\n let byte_to_bump = max_field_value_as_bytes[index_of_byte_to_bump as u32];\n\n // Skip test execution if the selected byte is already at maximum value (255).\n // This is acceptable since we are using fuzz testing to generate many test cases.\n if byte_to_bump != 255 {\n let mut input = BoundedVec::<_, 32>::from_array(max_field_value_as_bytes);\n\n // Increment the selected byte to exceed the field's maximum value\n input.set(index_of_byte_to_bump as u32, byte_to_bump + 1);\n\n // Attempt the conversion, which should fail due to the value exceeding the field's capacity\n let _fields = fields_from_bytes(input);\n }\n }\n\n}\n"
4553
4553
  },
4554
- "239": {
4554
+ "241": {
4555
4555
  "path": "/home/aztec-dev/aztec-packages/noir-projects/aztec-nr/aztec/src/utils/point.nr",
4556
4556
  "source": "use protocol_types::{point::Point, utils::field::sqrt};\n\n// I am storing the modulus minus 1 divided by 2 here because full modulus would throw \"String literal too large\" error\n// Full modulus is 21888242871839275222246405745257275088548364400416034343698204186575808495617\nglobal BN254_FR_MODULUS_DIV_2: Field =\n 10944121435919637611123202872628637544274182200208017171849102093287904247808;\n\n/// Converts a point to a byte array.\n///\n/// We don't serialize the point at infinity flag because this function is used in situations where we do not want\n/// to waste the extra byte (encrypted log).\npub fn point_to_bytes(p: Point) -> [u8; 32] {\n // Note that there is 1 more free bit in the 32 bytes (254 bits currently occupied by the x coordinate, 1 bit for\n // the \"sign\") so it's possible to use that last bit as an \"is_infinite\" flag if desired in the future.\n assert(!p.is_infinite, \"Cannot serialize point at infinity as bytes.\");\n\n let mut result: [u8; 32] = p.x.to_be_bytes();\n\n if get_sign_of_point(p) {\n // y is <= (modulus - 1) / 2 so we set the sign bit to 1\n // Here we leverage that field fits into 254 bits (log2(Fr.MODULUS) < 254) and given that we serialize Fr to 32\n // bytes and we use big-endian the 2 most significant bits are never populated. Hence we can use one of\n // the bits as a sign bit.\n result[0] += 128;\n }\n\n result\n}\n\n/**\n * Returns: true if p.y <= MOD_DIV_2, else false.\n */\npub fn get_sign_of_point(p: Point) -> bool {\n // We store only a \"sign\" of the y coordinate because the rest can be derived from the x coordinate. To get\n // the sign we check if the y coordinate is less or equal than the curve's order minus 1 divided by 2.\n // Ideally we'd do `y <= MOD_DIV_2`, but there's no `lte` function, so instead we do `!(y > MOD_DIV_2)`, which is\n // equivalent, and then rewrite that as `!(MOD_DIV_2 < y)`, since we also have no `gt` function.\n !BN254_FR_MODULUS_DIV_2.lt(p.y)\n}\n\n/// Returns a `Point` in the Grumpkin curve given its x coordinate.\n///\n/// Because not all values in the field are valid x coordinates of points in the curve (i.e. there\n/// is no corresponding y value in the field that satisfies the curve equation), it may not be\n/// possible to reconstruct a `Point`. `Option::none()` is returned in such cases.\npub fn point_from_x_coord(x: Field) -> Option<Point> {\n // y ^ 2 = x ^ 3 - 17\n let rhs = x * x * x - 17;\n sqrt(rhs).map(|y| Point { x, y, is_infinite: false })\n}\n\n/// Returns a `Point` in the Grumpkin curve given its x coordinate and sign for the y coordinate.\n///\n/// Because not all values in the field are valid x coordinates of points in the curve (i.e. there\n/// is no corresponding y value in the field that satisfies the curve equation), it may not be\n/// possible to reconstruct a `Point`. `Option::none()` is returned in such cases.\n///\n/// @param x - The x coordinate of the point\n/// @param sign - The \"sign\" of the y coordinate - determines whether y <= (Fr.MODULUS - 1) / 2\npub fn point_from_x_coord_and_sign(x: Field, sign: bool) -> Option<Point> {\n // y ^ 2 = x ^ 3 - 17\n let rhs = x * x * x - 17;\n\n sqrt(rhs).map(|y| {\n // If there is a square root, we need to ensure it has the correct \"sign\"\n let y_is_positive = !BN254_FR_MODULUS_DIV_2.lt(y);\n let final_y = if y_is_positive == sign { y } else { -y };\n Point { x, y: final_y, is_infinite: false }\n })\n}\n\nmod test {\n use crate::utils::point::{point_from_x_coord, point_from_x_coord_and_sign, point_to_bytes};\n use dep::protocol_types::point::Point;\n use dep::protocol_types::utils::field::pow;\n\n #[test]\n unconstrained fn test_point_to_bytes_positive_sign() {\n let p = Point {\n x: 0x1af41f5de96446dc3776a1eb2d98bb956b7acd9979a67854bec6fa7c2973bd73,\n y: 0x07fc22c7f2c7057571f137fe46ea9c95114282bc95d37d71ec4bfb88de457d4a,\n is_infinite: false,\n };\n\n let compressed_point = point_to_bytes(p);\n\n let expected_compressed_point_positive_sign = [\n 154, 244, 31, 93, 233, 100, 70, 220, 55, 118, 161, 235, 45, 152, 187, 149, 107, 122,\n 205, 153, 121, 166, 120, 84, 190, 198, 250, 124, 41, 115, 189, 115,\n ];\n assert_eq(expected_compressed_point_positive_sign, compressed_point);\n }\n\n #[test]\n unconstrained fn test_point_to_bytes_negative_sign() {\n let p = Point {\n x: 0x247371652e55dd74c9af8dbe9fb44931ba29a9229994384bd7077796c14ee2b5,\n y: 0x26441aec112e1ae4cee374f42556932001507ad46e255ffb27369c7e3766e5c0,\n is_infinite: false,\n };\n\n let compressed_point = point_to_bytes(p);\n\n let expected_compressed_point_negative_sign = [\n 36, 115, 113, 101, 46, 85, 221, 116, 201, 175, 141, 190, 159, 180, 73, 49, 186, 41, 169,\n 34, 153, 148, 56, 75, 215, 7, 119, 150, 193, 78, 226, 181,\n ];\n\n assert_eq(expected_compressed_point_negative_sign, compressed_point);\n }\n\n #[test]\n unconstrained fn test_point_from_x_coord_and_sign() {\n // Test positive y coordinate\n let x = 0x1af41f5de96446dc3776a1eb2d98bb956b7acd9979a67854bec6fa7c2973bd73;\n let sign = true;\n let p = point_from_x_coord_and_sign(x, sign).unwrap();\n\n assert_eq(p.x, x);\n assert_eq(p.y, 0x07fc22c7f2c7057571f137fe46ea9c95114282bc95d37d71ec4bfb88de457d4a);\n assert_eq(p.is_infinite, false);\n\n // Test negative y coordinate\n let x2 = 0x247371652e55dd74c9af8dbe9fb44931ba29a9229994384bd7077796c14ee2b5;\n let sign2 = false;\n let p2 = point_from_x_coord_and_sign(x2, sign2).unwrap();\n\n assert_eq(p2.x, x2);\n assert_eq(p2.y, 0x26441aec112e1ae4cee374f42556932001507ad46e255ffb27369c7e3766e5c0);\n assert_eq(p2.is_infinite, false);\n }\n\n #[test]\n unconstrained fn test_point_from_x_coord_valid() {\n // x = 8 is a known quadratic residue - should give a valid point\n let result = point_from_x_coord(Field::from(8));\n assert(result.is_some());\n\n let point = result.unwrap();\n assert_eq(point.x, Field::from(8));\n // Check curve equation y^2 = x^3 - 17\n assert_eq(pow(point.y, 2), pow(point.x, 3) - 17);\n }\n\n #[test]\n unconstrained fn test_point_from_x_coord_invalid() {\n // x = 3 is a non-residue for this curve - should give None\n let x = Field::from(3);\n let maybe_point = point_from_x_coord(x);\n assert(maybe_point.is_none());\n }\n\n}\n"
4557
4557
  },
4558
- "250": {
4558
+ "252": {
4559
4559
  "path": "/home/aztec-dev/nargo/github.com/noir-lang/poseidon/v0.1.1/src/poseidon2.nr",
4560
4560
  "source": "use std::default::Default;\nuse std::hash::Hasher;\n\ncomptime global RATE: u32 = 3;\n\npub struct Poseidon2 {\n cache: [Field; 3],\n state: [Field; 4],\n cache_size: u32,\n squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2 {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n Poseidon2::hash_internal(input, message_size, message_size != N)\n }\n\n pub(crate) fn new(iv: Field) -> Poseidon2 {\n let mut result =\n Poseidon2 { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) {\n // add the cache into sponge state\n for i in 0..RATE {\n // We effectively zero-pad the cache by only adding to the state\n // cache that is less than the specified `cache_size`\n if i < self.cache_size {\n self.state[i] += self.cache[i];\n }\n }\n self.state = crate::poseidon2_permutation(self.state, 4);\n }\n\n fn absorb(&mut self, input: Field) {\n assert(!self.squeeze_mode);\n if self.cache_size == RATE {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n }\n }\n\n fn squeeze(&mut self) -> Field {\n assert(!self.squeeze_mode);\n // If we're in absorb mode, apply sponge permutation to compress the cache.\n self.perform_duplex();\n self.squeeze_mode = true;\n\n // Pop one item off the top of the permutation and return it.\n self.state[0]\n }\n\n fn hash_internal<let N: u32>(\n input: [Field; N],\n in_len: u32,\n is_variable_length: bool,\n ) -> Field {\n let two_pow_64 = 18446744073709551616;\n let iv: Field = (in_len as Field) * two_pow_64;\n let mut sponge = Poseidon2::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n\npub struct Poseidon2Hasher {\n _state: [Field],\n}\n\nimpl Hasher for Poseidon2Hasher {\n fn finish(self) -> Field {\n let iv: Field = (self._state.len() as Field) * 18446744073709551616; // iv = (self._state.len() << 64)\n let mut sponge = Poseidon2::new(iv);\n for i in 0..self._state.len() {\n sponge.absorb(self._state[i]);\n }\n sponge.squeeze()\n }\n\n fn write(&mut self, input: Field) {\n self._state = self._state.push_back(input);\n }\n}\n\nimpl Default for Poseidon2Hasher {\n fn default() -> Self {\n Poseidon2Hasher { _state: &[] }\n }\n}\n"
4561
4561
  },
@@ -4563,55 +4563,55 @@
4563
4563
  "path": "std/array/mod.nr",
4564
4564
  "source": "use crate::cmp::{Eq, Ord};\nuse crate::convert::From;\nuse crate::runtime::is_unconstrained;\n\nmod check_shuffle;\nmod quicksort;\n\nimpl<T, let N: u32> [T; N] {\n /// Returns the length of this array.\n ///\n /// ```noir\n /// fn len(self) -> Field\n /// ```\n ///\n /// example\n ///\n /// ```noir\n /// fn main() {\n /// let array = [42, 42];\n /// assert(array.len() == 2);\n /// }\n /// ```\n #[builtin(array_len)]\n pub fn len(self) -> u32 {}\n\n /// Returns this array as a slice.\n ///\n /// ```noir\n /// let array = [1, 2];\n /// let slice = array.as_slice();\n /// assert_eq(slice, &[1, 2]);\n /// ```\n #[builtin(as_slice)]\n pub fn as_slice(self) -> [T] {}\n\n /// Applies a function to each element of this array, returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.map(|a| a * 2);\n /// assert_eq(b, [2, 4, 6]);\n /// ```\n pub fn map<U, Env>(self, f: fn[Env](T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array along with its index,\n /// returning a new array containing the mapped elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let b = a.mapi(|i, a| i + a * 2);\n /// assert_eq(b, [2, 5, 8]);\n /// ```\n pub fn mapi<U, Env>(self, f: fn[Env](u32, T) -> U) -> [U; N] {\n let uninitialized = crate::mem::zeroed();\n let mut ret = [uninitialized; N];\n\n for i in 0..self.len() {\n ret[i] = f(i, self[i]);\n }\n\n ret\n }\n\n /// Applies a function to each element of this array.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// let mut i = 0;\n /// a.for_each(|x| {\n /// b[i] = x;\n /// i += 1;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_each<Env>(self, f: fn[Env](T) -> ()) {\n for i in 0..self.len() {\n f(self[i]);\n }\n }\n\n /// Applies a function to each element of this array along with its index.\n ///\n /// Example:\n ///\n /// ```rust\n /// let a = [1, 2, 3];\n /// let mut b = [0; 3];\n /// a.for_eachi(|i, x| {\n /// b[i] = x;\n /// });\n /// assert_eq(a, b);\n /// ```\n pub fn for_eachi<Env>(self, f: fn[Env](u32, T) -> ()) {\n for i in 0..self.len() {\n f(i, self[i]);\n }\n }\n\n /// Applies a function to each element of the array, returning the final accumulated value. The first\n /// parameter is the initial value.\n ///\n /// This is a left fold, so the given function will be applied to the accumulator and first element of\n /// the array, then the second, and so on. For a given call the expected result would be equivalent to:\n ///\n /// ```rust\n /// let a1 = [1];\n /// let a2 = [1, 2];\n /// let a3 = [1, 2, 3];\n ///\n /// let f = |a, b| a - b;\n /// a1.fold(10, f); //=> f(10, 1)\n /// a2.fold(10, f); //=> f(f(10, 1), 2)\n /// a3.fold(10, f); //=> f(f(f(10, 1), 2), 3)\n ///\n /// assert_eq(a3.fold(10, f), 10 - 1 - 2 - 3);\n /// ```\n pub fn fold<U, Env>(self, mut accumulator: U, f: fn[Env](U, T) -> U) -> U {\n for elem in self {\n accumulator = f(accumulator, elem);\n }\n accumulator\n }\n\n /// Same as fold, but uses the first element as the starting element.\n ///\n /// Requires the input array to be non-empty.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [1, 2, 3, 4];\n /// let reduced = arr.reduce(|a, b| a + b);\n /// assert(reduced == 10);\n /// }\n /// ```\n pub fn reduce<Env>(self, f: fn[Env](T, T) -> T) -> T {\n let mut accumulator = self[0];\n for i in 1..self.len() {\n accumulator = f(accumulator, self[i]);\n }\n accumulator\n }\n\n /// Returns true if all the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 2];\n /// let all = arr.all(|a| a == 2);\n /// assert(all);\n /// }\n /// ```\n pub fn all<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = true;\n for elem in self {\n ret &= predicate(elem);\n }\n ret\n }\n\n /// Returns true if any of the elements in this array satisfy the given predicate.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr = [2, 2, 2, 2, 5];\n /// let any = arr.any(|a| a == 5);\n /// assert(any);\n /// }\n /// ```\n pub fn any<Env>(self, predicate: fn[Env](T) -> bool) -> bool {\n let mut ret = false;\n for elem in self {\n ret |= predicate(elem);\n }\n ret\n }\n\n /// Concatenates this array with another array.\n ///\n /// Example:\n ///\n /// ```noir\n /// fn main() {\n /// let arr1 = [1, 2, 3, 4];\n /// let arr2 = [6, 7, 8, 9, 10, 11];\n /// let concatenated_arr = arr1.concat(arr2);\n /// assert(concatenated_arr == [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n /// }\n /// ```\n pub fn concat<let M: u32>(self, array2: [T; M]) -> [T; N + M] {\n let mut result = [crate::mem::zeroed(); N + M];\n for i in 0..N {\n result[i] = self[i];\n }\n for i in 0..M {\n result[i + N] = array2[i];\n }\n result\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Ord + Eq,\n{\n /// Returns a new sorted array. The original array remains untouched. Notice that this function will\n /// only work for arrays of fields or integers, not for any arbitrary type. This is because the sorting\n /// logic it uses internally is optimized specifically for these values. If you need a sort function to\n /// sort any type, you should use the [`Self::sort_via`] function.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32];\n /// let sorted = arr.sort();\n /// assert(sorted == [32, 42]);\n /// }\n /// ```\n pub fn sort(self) -> Self {\n self.sort_via(|a, b| a <= b)\n }\n}\n\nimpl<T, let N: u32> [T; N]\nwhere\n T: Eq,\n{\n /// Returns a new sorted array by sorting it with a custom comparison function.\n /// The original array remains untouched.\n /// The ordering function must return true if the first argument should be sorted to be before the second argument or is equal to the second argument.\n ///\n /// Using this method with an operator like `<` that does not return `true` for equal values will result in an assertion failure for arrays with equal elements.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let arr = [42, 32]\n /// let sorted_ascending = arr.sort_via(|a, b| a <= b);\n /// assert(sorted_ascending == [32, 42]); // verifies\n ///\n /// let sorted_descending = arr.sort_via(|a, b| a >= b);\n /// assert(sorted_descending == [32, 42]); // does not verify\n /// }\n /// ```\n pub fn sort_via<Env>(self, ordering: fn[Env](T, T) -> bool) -> Self {\n // Safety: `sorted` array is checked to be:\n // a. a permutation of `input`'s elements\n // b. satisfying the predicate `ordering`\n let sorted = unsafe { quicksort::quicksort(self, ordering) };\n\n if !is_unconstrained() {\n for i in 0..N - 1 {\n assert(\n ordering(sorted[i], sorted[i + 1]),\n \"Array has not been sorted correctly according to `ordering`.\",\n );\n }\n check_shuffle::check_shuffle(self, sorted);\n }\n sorted\n }\n}\n\nimpl<let N: u32> [u8; N] {\n /// Converts a byte array of type `[u8; N]` to a string. Note that this performs no UTF-8 validation -\n /// the given array is interpreted as-is as a string.\n ///\n /// Example:\n ///\n /// ```rust\n /// fn main() {\n /// let hi = [104, 105].as_str_unchecked();\n /// assert_eq(hi, \"hi\");\n /// }\n /// ```\n #[builtin(array_as_str_unchecked)]\n pub fn as_str_unchecked(self) -> str<N> {}\n}\n\nimpl<let N: u32> From<str<N>> for [u8; N] {\n /// Returns an array of the string bytes.\n fn from(s: str<N>) -> Self {\n s.as_bytes()\n }\n}\n\nmod test {\n #[test]\n fn map_empty() {\n assert_eq([].map(|x| x + 1), []);\n }\n\n global arr_with_100_values: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2, 54,\n 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41, 19, 98,\n 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21, 43, 86, 35,\n 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15, 127, 81, 30, 8,\n 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n global expected_with_100_values: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30, 32,\n 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58, 61, 62,\n 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82, 84, 84, 86,\n 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114, 114, 116, 118,\n 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n fn sort_u32(a: u32, b: u32) -> bool {\n a <= b\n }\n\n #[test]\n fn test_sort() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort();\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort();\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_100_values_comptime() {\n let sorted = arr_with_100_values.sort();\n assert(sorted == expected_with_100_values);\n }\n\n #[test]\n fn test_sort_via() {\n let mut arr: [u32; 7] = [3, 6, 8, 10, 1, 2, 1];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 7] = [1, 1, 2, 3, 6, 8, 10];\n assert(sorted == expected);\n }\n\n #[test]\n fn test_sort_via_100_values() {\n let mut arr: [u32; 100] = [\n 42, 123, 87, 93, 48, 80, 50, 5, 104, 84, 70, 47, 119, 66, 71, 121, 3, 29, 42, 118, 2,\n 54, 89, 44, 81, 0, 26, 106, 68, 96, 84, 48, 95, 54, 45, 32, 89, 100, 109, 19, 37, 41,\n 19, 98, 53, 114, 107, 66, 6, 74, 13, 19, 105, 64, 123, 28, 44, 50, 89, 58, 123, 126, 21,\n 43, 86, 35, 21, 62, 82, 0, 108, 120, 72, 72, 62, 80, 12, 71, 70, 86, 116, 73, 38, 15,\n 127, 81, 30, 8, 125, 28, 26, 69, 114, 63, 27, 28, 61, 42, 13, 32,\n ];\n\n let sorted = arr.sort_via(sort_u32);\n\n let expected: [u32; 100] = [\n 0, 0, 2, 3, 5, 6, 8, 12, 13, 13, 15, 19, 19, 19, 21, 21, 26, 26, 27, 28, 28, 28, 29, 30,\n 32, 32, 35, 37, 38, 41, 42, 42, 42, 43, 44, 44, 45, 47, 48, 48, 50, 50, 53, 54, 54, 58,\n 61, 62, 62, 63, 64, 66, 66, 68, 69, 70, 70, 71, 71, 72, 72, 73, 74, 80, 80, 81, 81, 82,\n 84, 84, 86, 86, 87, 89, 89, 89, 93, 95, 96, 98, 100, 104, 105, 106, 107, 108, 109, 114,\n 114, 116, 118, 119, 120, 121, 123, 123, 123, 125, 126, 127,\n ];\n assert(sorted == expected);\n }\n\n #[test]\n fn mapi_empty() {\n assert_eq([].mapi(|i, x| i * x + 1), []);\n }\n\n #[test]\n fn for_each_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_each(|_x| assert(false));\n }\n\n #[test]\n fn for_eachi_empty() {\n let empty_array: [Field; 0] = [];\n empty_array.for_eachi(|_i, _x| assert(false));\n }\n\n #[test]\n fn map_example() {\n let a = [1, 2, 3];\n let b = a.map(|a| a * 2);\n assert_eq(b, [2, 4, 6]);\n }\n\n #[test]\n fn mapi_example() {\n let a = [1, 2, 3];\n let b = a.mapi(|i, a| i + a * 2);\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn for_each_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n let mut i = 0;\n let i_ref = &mut i;\n a.for_each(|x| {\n b_ref[*i_ref] = x * 2;\n *i_ref += 1;\n });\n assert_eq(b, [2, 4, 6]);\n assert_eq(i, 3);\n }\n\n #[test]\n fn for_eachi_example() {\n let a = [1, 2, 3];\n let mut b = [0, 0, 0];\n let b_ref = &mut b;\n a.for_eachi(|i, a| { b_ref[i] = i + a * 2; });\n assert_eq(b, [2, 5, 8]);\n }\n\n #[test]\n fn concat() {\n let arr1 = [1, 2, 3, 4];\n let arr2 = [6, 7, 8, 9, 10, 11];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1, 2, 3, 4, 6, 7, 8, 9, 10, 11]);\n }\n\n #[test]\n fn concat_zero_length_with_something() {\n let arr1 = [];\n let arr2 = [1];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_something_with_zero_length() {\n let arr1 = [1];\n let arr2 = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, [1]);\n }\n\n #[test]\n fn concat_zero_lengths() {\n let arr1: [Field; 0] = [];\n let arr2: [Field; 0] = [];\n let concatenated_arr = arr1.concat(arr2);\n assert_eq(concatenated_arr, []);\n }\n}\n"
4565
4565
  },
4566
- "308": {
4566
+ "310": {
4567
4567
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/address/aztec_address.nr",
4568
4568
  "source": "use crate::{\n address::{\n partial_address::PartialAddress, salted_initialization_hash::SaltedInitializationHash,\n },\n constants::{\n AZTEC_ADDRESS_LENGTH, GENERATOR_INDEX__CONTRACT_ADDRESS_V1, MAX_FIELD_VALUE,\n MAX_PROTOCOL_CONTRACTS,\n },\n contract_class_id::ContractClassId,\n hash::poseidon2_hash_with_separator,\n public_keys::{IvpkM, NpkM, OvpkM, PublicKeys, ToPoint, TpkM},\n traits::{Deserialize, Empty, FromField, Packable, Serialize, ToField},\n utils::field::{pow, sqrt},\n};\n\n// We do below because `use crate::point::Point;` does not work\nuse dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\n\nuse crate::public_keys::AddressPoint;\nuse std::{\n embedded_curve_ops::{EmbeddedCurveScalar, fixed_base_scalar_mul as derive_public_key},\n ops::Add,\n};\nuse std::meta::derive;\n\n// Aztec address\n#[derive(Deserialize, Eq, Packable, Serialize)]\npub struct AztecAddress {\n pub inner: Field,\n}\n\nimpl Empty for AztecAddress {\n fn empty() -> Self {\n Self { inner: 0 }\n }\n}\n\nimpl ToField for AztecAddress {\n fn to_field(self) -> Field {\n self.inner\n }\n}\n\nimpl FromField for AztecAddress {\n fn from_field(value: Field) -> AztecAddress {\n AztecAddress { inner: value }\n }\n}\n\nimpl AztecAddress {\n pub fn zero() -> Self {\n Self { inner: 0 }\n }\n\n /// Returns an address's `AddressPoint`, which can be used to create shared secrets with the owner\n /// of the address. If the address is invalid (i.e. it is not a properly derived Aztec address), then this\n /// returns `Option::none()`, and no shared secrets can be created.\n pub fn to_address_point(self) -> Option<AddressPoint> {\n // We compute the address point by taking our address, setting it to x, and then solving for y in the\n // equation which defines our bn curve:\n // y^2 = x^3 - 17; x = address\n let x = self.inner;\n let y_squared = pow(x, 3) - 17;\n\n // An invalid AztecAddress is one for which no y coordinate satisfies the curve equation, which we'll\n // identify by proving that the square root of y_squared does not exist.\n let mut y_opt = sqrt(y_squared);\n if y_opt.is_none() {\n Option::none()\n } else {\n let mut y = y_opt.unwrap();\n\n // If we get a negative y coordinate (any y where y > MAX_FIELD_VALUE / 2), we pin it to the\n // positive one (any value where y <= MAX_FIELD_VALUE / 2) by subtracting it from the Field modulus\n // note: The field modulus is MAX_FIELD_VALUE + 1\n if (!(y.lt(MAX_FIELD_VALUE / 2) | y.eq(MAX_FIELD_VALUE / 2))) {\n y = (MAX_FIELD_VALUE + 1) - y;\n }\n\n Option::some(\n AddressPoint { inner: Point { x: self.inner, y, is_infinite: false } },\n )\n }\n }\n\n pub fn compute(public_keys: PublicKeys, partial_address: PartialAddress) -> AztecAddress {\n let public_keys_hash = public_keys.hash();\n\n let pre_address = poseidon2_hash_with_separator(\n [public_keys_hash.to_field(), partial_address.to_field()],\n GENERATOR_INDEX__CONTRACT_ADDRESS_V1,\n );\n\n let address_point = derive_public_key(EmbeddedCurveScalar::from_field(pre_address)).add(\n public_keys.ivpk_m.to_point(),\n );\n\n // Note that our address is only the x-coordinate of the full address_point. This is okay because when people want to encrypt something and send it to us\n // they can recover our full point using the x-coordinate (our address itself). To do this, they recompute the y-coordinate according to the equation y^2 = x^3 - 17.\n // When they do this, they may get a positive y-coordinate (a value that is less than or equal to MAX_FIELD_VALUE / 2) or\n // a negative y-coordinate (a value that is more than MAX_FIELD_VALUE), and we cannot dictate which one they get and hence the recovered point may sometimes be different than the one\n // our secret can decrypt. Regardless though, they should and will always encrypt using point with the positive y-coordinate by convention.\n // This ensures that everyone encrypts to the same point given an arbitrary x-coordinate (address). This is allowed because even though our original point may not have a positive y-coordinate,\n // with our original secret, we will be able to derive the secret to the point with the flipped (and now positive) y-coordinate that everyone encrypts to.\n AztecAddress::from_field(address_point.x)\n }\n\n pub fn compute_from_class_id(\n contract_class_id: ContractClassId,\n salted_initialization_hash: SaltedInitializationHash,\n public_keys: PublicKeys,\n ) -> Self {\n let partial_address = PartialAddress::compute_from_salted_initialization_hash(\n contract_class_id,\n salted_initialization_hash,\n );\n\n AztecAddress::compute(public_keys, partial_address)\n }\n\n pub fn is_protocol_contract(self) -> bool {\n self.inner.lt(MAX_PROTOCOL_CONTRACTS as Field)\n }\n\n pub fn is_zero(self) -> bool {\n self.inner == 0\n }\n\n pub fn assert_is_zero(self) {\n assert(self.to_field() == 0);\n }\n}\n\n#[test]\nfn compute_address_from_partial_and_pub_keys() {\n let public_keys = PublicKeys {\n npk_m: NpkM {\n inner: Point {\n x: 0x22f7fcddfa3ce3e8f0cc8e82d7b94cdd740afa3e77f8e4a63ea78a239432dcab,\n y: 0x0471657de2b6216ade6c506d28fbc22ba8b8ed95c871ad9f3e3984e90d9723a7,\n is_infinite: false,\n },\n },\n ivpk_m: IvpkM {\n inner: Point {\n x: 0x111223493147f6785514b1c195bb37a2589f22a6596d30bb2bb145fdc9ca8f1e,\n y: 0x273bbffd678edce8fe30e0deafc4f66d58357c06fd4a820285294b9746c3be95,\n is_infinite: false,\n },\n },\n ovpk_m: OvpkM {\n inner: Point {\n x: 0x09115c96e962322ffed6522f57194627136b8d03ac7469109707f5e44190c484,\n y: 0x0c49773308a13d740a7f0d4f0e6163b02c5a408b6f965856b6a491002d073d5b,\n is_infinite: false,\n },\n },\n tpk_m: TpkM {\n inner: Point {\n x: 0x00d3d81beb009873eb7116327cf47c612d5758ef083d4fda78e9b63980b2a762,\n y: 0x2f567d22d2b02fe1f4ad42db9d58a36afd1983e7e2909d1cab61cafedad6193a,\n is_infinite: false,\n },\n },\n };\n\n let partial_address = PartialAddress::from_field(\n 0x0a7c585381b10f4666044266a02405bf6e01fa564c8517d4ad5823493abd31de,\n );\n\n let address = AztecAddress::compute(public_keys, partial_address);\n\n // The following value was generated by `derivation.test.ts`.\n // --> Run the test with AZTEC_GENERATE_TEST_DATA=1 flag to update test data.\n let expected_computed_address_from_partial_and_pubkeys =\n 0x24e4646f58b9fbe7d38e317db8d5636c423fbbdfbe119fc190fe9c64747e0c62;\n assert(address.to_field() == expected_computed_address_from_partial_and_pubkeys);\n}\n\n#[test]\nfn compute_preaddress_from_partial_and_pub_keys() {\n let pre_address = poseidon2_hash_with_separator([1, 2], GENERATOR_INDEX__CONTRACT_ADDRESS_V1);\n let expected_computed_preaddress_from_partial_and_pubkey =\n 0x23ce9be3fa3c846b0f9245cc796902e731d04f086e8a42473bb29e405fc98075;\n assert(pre_address == expected_computed_preaddress_from_partial_and_pubkey);\n}\n\n#[test]\nfn from_field_to_field() {\n let address = AztecAddress { inner: 37 };\n assert_eq(FromField::from_field(address.to_field()), address);\n}\n\n#[test]\nfn serde() {\n let address = AztecAddress { inner: 37 };\n // We use the AZTEC_ADDRESS_LENGTH constant to ensure that there is a match between the derived trait\n // implementation and the constant.\n let serialized: [Field; AZTEC_ADDRESS_LENGTH] = address.serialize();\n let deserialized = AztecAddress::deserialize(serialized);\n assert_eq(address, deserialized);\n}\n\n#[test]\nfn to_address_point_valid() {\n // x = 8 where x^3 - 17 = 512 - 17 = 495, which is a residue in this field\n let address = AztecAddress { inner: 8 };\n let maybe_point = address.to_address_point();\n assert(maybe_point.is_some());\n\n let point = maybe_point.unwrap().inner;\n // check that x is preserved\n assert_eq(point.x, Field::from(8));\n\n // check that the curve equation holds: y^2 == x^3 - 17\n assert_eq(pow(point.y, 2), pow(point.x, 3) - 17);\n}\n\n#[test]\nunconstrained fn to_address_point_invalid() {\n // x = 3 where x^3 - 17 = 27 - 17 = 10, which is a non-residue in this field\n let address = AztecAddress { inner: 3 }; //\n let maybe_point = address.to_address_point();\n assert(maybe_point.is_none());\n}\n"
4569
4569
  },
4570
- "329": {
4570
+ "331": {
4571
4571
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/debug_log.nr",
4572
4572
  "source": "// TODO: Expose other wrapped functions than debug (info, warn)\n// ['silent', 'fatal', 'error', 'warn', 'info', 'verbose', 'debug', 'trace']\n\npub global SILENT_LOG_LEVEL: u8 = 0;\npub global FATAL_LOG_LEVEL: u8 = 1;\npub global ERROR_LOG_LEVEL: u8 = 2;\npub global WARN_LOG_LEVEL: u8 = 3;\npub global INFO_LOG_LEVEL: u8 = 4;\npub global VERBOSE_LOG_LEVEL: u8 = 5;\npub global DEBUG_LOG_LEVEL: u8 = 6;\npub global TRACE_LOG_LEVEL: u8 = 7;\n\n/// Utility function to console.log data in the acir simulator.\n/// Example:\n/// debug_log(\"blah blah this is a debug string\");\npub fn debug_log<let N: u32>(msg: str<N>) {\n debug_log_format(msg, []);\n}\n\n/// Same as debug_log, but allows to customize the log level.\n/// Consider changing just to 'log'\npub fn debug_log_with_level<let N: u32>(log_level: u8, msg: str<N>) {\n debug_log_format_with_level(log_level, msg, []);\n}\n\n/// Utility function to console.log data in the acir simulator. This variant receives a format string in which the\n/// `${k}` tokens will be replaced with the k-eth value in the `args` array.\n/// Examples:\n/// debug_log_format(\"get_2(slot:{0}) =>\\n\\t0:{1}\\n\\t1:{2}\", [storage_slot, note0_hash, note1_hash]);\n/// debug_log_format(\"whole array: {}\", [e1, e2, e3, e4]);\npub fn debug_log_format<let M: u32, let N: u32>(msg: str<M>, args: [Field; N]) {\n // Safety: This oracle call returns nothing: we only call it for its side effects. It is therefore always safe\n // to call.\n unsafe { debug_log_array_oracle_wrapper(DEBUG_LOG_LEVEL, msg, args) };\n}\n\n/// Same as debug_log_format, but allows to customize the log level.\n/// Consider changing just to 'log_format'\npub fn debug_log_format_with_level<let M: u32, let N: u32>(\n log_level: u8,\n msg: str<M>,\n args: [Field; N],\n) {\n // Safety: This oracle call returns nothing: we only call it for its side effects. It is therefore always safe\n // to call.\n unsafe { debug_log_array_oracle_wrapper(log_level, msg, args) };\n}\n\n/// Utility function to console.log data in the acir simulator. This variant receives a format string in which the\n/// `${k}` tokens will be replaced with the k-eth value in the `args` slice.\n/// Examples:\n/// debug_log_format(\"get_2(slot:{0}) =>\\n\\t0:{1}\\n\\t1:{2}\", [storage_slot, note0_hash, note1_hash]);\n/// debug_log_format(\"whole slice: {}\", [e1, e2, e3, e4]);\npub fn debug_log_format_slice<let M: u32>(log_level: u8, msg: str<M>, args: [Field]) {\n // Safety: This oracle call returns nothing: we only call it for its side effects. It is therefore always safe\n // to call.\n unsafe { debug_log_slice_oracle_wrapper(log_level, msg, args) };\n}\n\n// We provide two versions of the debug log oracle: one that takes args as a slice and another one that takes args as an array.\n// We do this since conversion from array to slice generates overhead in public functions, since opcodes need to be emitted for the conversion.\n// By exposing the two flavors, we avoid conversions since the AVM is able to handle both arrays an slices in this oracle.\n\nunconstrained fn debug_log_slice_oracle_wrapper<let M: u32>(\n log_level: u8,\n msg: str<M>,\n args: [Field],\n) {\n debug_log_slice_oracle(log_level, msg, args);\n}\n\n// WARNING: sometimes when using debug logs the ACVM errors with: `thrown: \"solver opcode resolution error: cannot solve opcode: expression has too many unknowns x155\"`\n#[oracle(utilityDebugLog)]\nunconstrained fn debug_log_slice_oracle<let M: u32>(log_level: u8, msg: str<M>, args: [Field]) {}\n\nunconstrained fn debug_log_array_oracle_wrapper<let M: u32, let N: u32>(\n log_level: u8,\n msg: str<M>,\n args: [Field; N],\n) {\n debug_log_array_oracle(log_level, msg, N, args);\n}\n\n#[oracle(utilityDebugLog)]\nunconstrained fn debug_log_array_oracle<let M: u32, let N: u32>(\n log_level: u8,\n msg: str<M>,\n length: u32,\n args: [Field; N],\n) {}\n"
4573
4573
  },
4574
- "339": {
4574
+ "341": {
4575
4575
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/hash.nr",
4576
4576
  "source": "mod poseidon2_chunks;\n\nuse crate::{\n abis::{\n contract_class_function_leaf_preimage::ContractClassFunctionLeafPreimage,\n function_selector::FunctionSelector,\n note_hash::NoteHash,\n nullifier::Nullifier,\n private_log::{PrivateLog, PrivateLogData},\n transaction::tx_request::TxRequest,\n },\n address::{AztecAddress, EthAddress},\n constants::{\n CONTRACT_CLASS_LOG_SIZE_IN_FIELDS, FUNCTION_TREE_HEIGHT, GENERATOR_INDEX__NOTE_HASH_NONCE,\n GENERATOR_INDEX__OUTER_NULLIFIER, GENERATOR_INDEX__SILOED_NOTE_HASH,\n GENERATOR_INDEX__UNIQUE_NOTE_HASH, NULL_MSG_SENDER_CONTRACT_ADDRESS, TWO_POW_64,\n },\n merkle_tree::root_from_sibling_path,\n messaging::l2_to_l1_message::L2ToL1Message,\n poseidon2::Poseidon2Sponge,\n side_effect::{Counted, Scoped},\n traits::{FromField, Hash, ToField},\n utils::field::{field_from_bytes, field_from_bytes_32_trunc},\n};\n\npub use poseidon2_chunks::poseidon2_absorb_in_chunks_existing_sponge;\nuse poseidon2_chunks::poseidon2_absorb_in_chunks;\nuse std::embedded_curve_ops::EmbeddedCurveScalar;\n\npub fn sha256_to_field<let N: u32>(bytes_to_hash: [u8; N]) -> Field {\n let sha256_hashed = sha256::digest(bytes_to_hash);\n let hash_in_a_field = field_from_bytes_32_trunc(sha256_hashed);\n\n hash_in_a_field\n}\n\npub fn private_functions_root_from_siblings(\n selector: FunctionSelector,\n vk_hash: Field,\n function_leaf_index: Field,\n function_leaf_sibling_path: [Field; FUNCTION_TREE_HEIGHT],\n) -> Field {\n let function_leaf_preimage = ContractClassFunctionLeafPreimage { selector, vk_hash };\n let function_leaf = function_leaf_preimage.hash();\n root_from_sibling_path(\n function_leaf,\n function_leaf_index,\n function_leaf_sibling_path,\n )\n}\n\npub fn compute_note_hash_nonce(first_nullifier_in_tx: Field, note_index_in_tx: u32) -> Field {\n // Hashing the first nullifier with note index in tx is guaranteed to be unique (because all nullifiers are also\n // unique).\n poseidon2_hash_with_separator(\n [first_nullifier_in_tx, note_index_in_tx as Field],\n GENERATOR_INDEX__NOTE_HASH_NONCE,\n )\n}\n\npub fn compute_unique_note_hash(note_nonce: Field, siloed_note_hash: Field) -> Field {\n let inputs = [note_nonce, siloed_note_hash];\n poseidon2_hash_with_separator(inputs, GENERATOR_INDEX__UNIQUE_NOTE_HASH)\n}\n\npub fn compute_nonce_and_unique_note_hash(\n siloed_note_hash: Field,\n first_nullifier: Field,\n note_index_in_tx: u32,\n) -> Field {\n let note_nonce = compute_note_hash_nonce(first_nullifier, note_index_in_tx);\n compute_unique_note_hash(note_nonce, siloed_note_hash)\n}\n\npub fn compute_siloed_note_hash(app: AztecAddress, note_hash: Field) -> Field {\n poseidon2_hash_with_separator(\n [app.to_field(), note_hash],\n GENERATOR_INDEX__SILOED_NOTE_HASH,\n )\n}\n\n/// Computes unique note hashes from siloed note hashes\npub fn compute_unique_siloed_note_hash(\n siloed_note_hash: Field,\n first_nullifier: Field,\n note_index_in_tx: u32,\n) -> Field {\n if siloed_note_hash == 0 {\n 0\n } else {\n compute_nonce_and_unique_note_hash(siloed_note_hash, first_nullifier, note_index_in_tx)\n }\n}\n\n/// Siloing in the context of Aztec refers to the process of hashing a note hash with a contract address (this way\n/// the note hash is scoped to a specific contract). This is used to prevent intermingling of notes between contracts.\npub fn silo_note_hash(note_hash: Scoped<Counted<NoteHash>>) -> Field {\n if note_hash.contract_address.is_zero() {\n 0\n } else {\n compute_siloed_note_hash(note_hash.contract_address, note_hash.innermost())\n }\n}\n\npub fn compute_siloed_nullifier(app: AztecAddress, nullifier: Field) -> Field {\n poseidon2_hash_with_separator(\n [app.to_field(), nullifier],\n GENERATOR_INDEX__OUTER_NULLIFIER,\n )\n}\n\npub fn silo_nullifier(nullifier: Scoped<Counted<Nullifier>>) -> Field {\n let value = nullifier.innermost().value;\n // Q: shouldn't we be checking whether the _whole_ nullifier is empty?\n // A: We don't have to. The init and inner circuits add contract address to non-empty nullifiers.\n // So we know we should silo it if the contract address is not empty.\n if nullifier.contract_address.is_zero() {\n value // Return `value` instead of 0 because an already-siloed nullifier's contract address is zero.\n } else {\n compute_siloed_nullifier(nullifier.contract_address, value)\n }\n}\n\npub fn create_protocol_nullifier(tx_request: TxRequest) -> Scoped<Counted<Nullifier>> {\n Nullifier { value: tx_request.hash(), note_hash: 0 }.count(1).scope(\n NULL_MSG_SENDER_CONTRACT_ADDRESS,\n )\n}\n\npub fn compute_siloed_private_log_field(contract_address: AztecAddress, field: Field) -> Field {\n poseidon2_hash([contract_address.to_field(), field])\n}\n\npub fn silo_private_log(private_log: Scoped<Counted<PrivateLogData>>) -> PrivateLog {\n let log = private_log.innermost().log;\n if private_log.contract_address.is_zero() {\n log\n } else {\n let mut fields = log.fields;\n fields[0] = compute_siloed_private_log_field(private_log.contract_address, fields[0]);\n PrivateLog::new(fields, log.length)\n }\n}\n\npub fn compute_contract_class_log_hash(log: [Field; CONTRACT_CLASS_LOG_SIZE_IN_FIELDS]) -> Field {\n poseidon2_hash(log)\n}\n\npub fn compute_app_secret_key(\n master_secret_key: EmbeddedCurveScalar,\n app_address: AztecAddress,\n app_secret_generator: Field,\n) -> Field {\n poseidon2_hash_with_separator(\n [master_secret_key.hi, master_secret_key.lo, app_address.to_field()],\n app_secret_generator,\n )\n}\n\npub fn merkle_hash(left: Field, right: Field) -> Field {\n poseidon2_hash([left, right])\n}\n\npub fn compute_l2_to_l1_hash(\n contract_address: AztecAddress,\n recipient: EthAddress,\n content: Field,\n rollup_version_id: Field,\n chain_id: Field,\n) -> Field {\n let contract_address_bytes: [u8; 32] = contract_address.to_field().to_be_bytes();\n let recipient_bytes: [u8; 20] = recipient.to_be_bytes();\n let content_bytes: [u8; 32] = content.to_be_bytes();\n let rollup_version_id_bytes: [u8; 32] = rollup_version_id.to_be_bytes();\n let chain_id_bytes: [u8; 32] = chain_id.to_be_bytes();\n\n let mut bytes: [u8; 148] = std::mem::zeroed();\n for i in 0..32 {\n bytes[i] = contract_address_bytes[i];\n bytes[i + 32] = rollup_version_id_bytes[i];\n // 64 - 84 are for recipient.\n bytes[i + 84] = chain_id_bytes[i];\n bytes[i + 116] = content_bytes[i];\n }\n\n for i in 0..20 {\n bytes[64 + i] = recipient_bytes[i];\n }\n\n sha256_to_field(bytes)\n}\n\npub fn silo_l2_to_l1_message(\n msg: Scoped<L2ToL1Message>,\n rollup_version_id: Field,\n chain_id: Field,\n) -> Field {\n if msg.contract_address.is_zero() {\n 0\n } else {\n compute_l2_to_l1_hash(\n msg.contract_address,\n msg.inner.recipient,\n msg.inner.content,\n rollup_version_id,\n chain_id,\n )\n }\n}\n\n/// Computes sha256 hash of 2 input fields.\n///\n/// @returns A truncated field (i.e., the first byte is always 0).\npub fn accumulate_sha256(v0: Field, v1: Field) -> Field {\n // Concatenate two fields into 32 x 2 = 64 bytes\n let v0_as_bytes: [u8; 32] = v0.to_be_bytes();\n let v1_as_bytes: [u8; 32] = v1.to_be_bytes();\n let hash_input_flattened = v0_as_bytes.concat(v1_as_bytes);\n\n sha256_to_field(hash_input_flattened)\n}\n\n#[inline_always]\npub fn pedersen_hash<let N: u32>(inputs: [Field; N], hash_index: u32) -> Field {\n std::hash::pedersen_hash_with_separator(inputs, hash_index)\n}\n\npub fn poseidon2_hash<let N: u32>(inputs: [Field; N]) -> Field {\n poseidon::poseidon2::Poseidon2::hash(inputs, N)\n}\n\n#[no_predicates]\npub fn poseidon2_hash_with_separator<let N: u32, T>(inputs: [Field; N], separator: T) -> Field\nwhere\n T: ToField,\n{\n let inputs_with_separator = [separator.to_field()].concat(inputs);\n poseidon2_hash(inputs_with_separator)\n}\n\n/// Computes a Poseidon2 hash over a dynamic-length subarray of the given input.\n/// Only the first `in_len` fields of `input` are absorbed; any remaining fields are ignored.\n/// The caller is responsible for ensuring that the input is padded with zeros if required.\n#[no_predicates]\npub fn poseidon2_hash_subarray<let N: u32>(input: [Field; N], in_len: u32) -> Field {\n let mut sponge = poseidon2_absorb_in_chunks(input, in_len);\n sponge.squeeze()\n}\n\n// NB the below is the same as poseidon::poseidon2::Poseidon2::hash(), but replacing a range check with a bit check,\n// and absorbing in chunks of 3 below.\n#[no_predicates]\npub fn poseidon2_cheaper_variable_hash<let N: u32>(input: [Field; N], in_len: u32) -> Field {\n let mut sponge = poseidon2_absorb_in_chunks(input, in_len);\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if in_len != N {\n sponge.absorb(1);\n }\n sponge.squeeze()\n}\n\n// This function is unconstrained because it is intended to be used in unconstrained context only as\n// in constrained contexts it would be too inefficient.\npub unconstrained fn poseidon2_hash_with_separator_bounded_vec<let N: u32, T>(\n inputs: BoundedVec<Field, N>,\n separator: T,\n) -> Field\nwhere\n T: ToField,\n{\n let in_len = inputs.len() + 1;\n let iv: Field = (in_len as Field) * TWO_POW_64;\n let mut sponge = Poseidon2Sponge::new(iv);\n sponge.absorb(separator.to_field());\n\n for i in 0..inputs.len() {\n sponge.absorb(inputs.get(i));\n }\n\n sponge.squeeze()\n}\n\n#[no_predicates]\npub fn poseidon2_hash_bytes<let N: u32>(inputs: [u8; N]) -> Field {\n let mut fields = [0; (N + 30) / 31];\n let mut field_index = 0;\n let mut current_field = [0; 31];\n for i in 0..inputs.len() {\n let index = i % 31;\n current_field[index] = inputs[i];\n if index == 30 {\n fields[field_index] = field_from_bytes(current_field, false);\n current_field = [0; 31];\n field_index += 1;\n }\n }\n if field_index != fields.len() {\n fields[field_index] = field_from_bytes(current_field, false);\n }\n poseidon2_hash(fields)\n}\n\n#[test]\nfn poseidon_chunks_matches_fixed() {\n let in_len = 501;\n let mut input: [Field; 4096] = [0; 4096];\n let mut fixed_input = [3; 501];\n assert(in_len == fixed_input.len()); // sanity check\n for i in 0..in_len {\n input[i] = 3;\n }\n let sub_chunk_hash = poseidon2_hash_subarray(input, in_len);\n let fixed_len_hash = poseidon::poseidon2::Poseidon2::hash(fixed_input, fixed_input.len());\n assert(sub_chunk_hash == fixed_len_hash);\n}\n\n#[test]\nfn poseidon_chunks_matches_variable() {\n let in_len = 501;\n let mut input: [Field; 4096] = [0; 4096];\n for i in 0..in_len {\n input[i] = 3;\n }\n let variable_chunk_hash = poseidon2_cheaper_variable_hash(input, in_len);\n let variable_len_hash = poseidon::poseidon2::Poseidon2::hash(input, in_len);\n assert(variable_chunk_hash == variable_len_hash);\n}\n\n#[test]\nfn smoke_sha256_to_field() {\n let full_buffer = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,\n 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,\n 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,\n 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,\n 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,\n 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,\n 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,\n 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,\n ];\n let result = sha256_to_field(full_buffer);\n\n assert(result == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184c7);\n\n // to show correctness of the current ver (truncate one byte) vs old ver (mod full bytes):\n let result_bytes = sha256::digest(full_buffer);\n let truncated_field = crate::utils::field::field_from_bytes_32_trunc(result_bytes);\n assert(truncated_field == result);\n let mod_res = result + (result_bytes[31] as Field);\n assert(mod_res == 0x448ebbc9e1a31220a2f3830c18eef61b9bd070e5084b7fa2a359fe729184e0);\n}\n\n#[test]\nfn compute_l2_l1_hash() {\n // All zeroes\n let hash_result =\n compute_l2_to_l1_hash(AztecAddress::from_field(0), EthAddress::zero(), 0, 0, 0);\n assert(hash_result == 0x3b18c58c739716e76429634a61375c45b3b5cd470c22ab6d3e14cee23dd992);\n\n // Non-zero case\n let hash_result = compute_l2_to_l1_hash(\n AztecAddress::from_field(1),\n EthAddress::from_field(3),\n 5,\n 2,\n 4,\n );\n assert(hash_result == 0xaab2a5828156782b12a1dc6f336e2bc627eb1b9514b02d511f66296990c050);\n}\n\n#[test]\nfn silo_l2_to_l1_message_matches_typescript() {\n let version = 4;\n let chainId = 5;\n\n let hash = silo_l2_to_l1_message(\n L2ToL1Message { recipient: EthAddress::from_field(1), content: 2 }.scope(\n AztecAddress::from_field(3),\n ),\n version,\n chainId,\n );\n\n // The following value was generated by `yarn-project/stdlib/src/hash/hash.test.ts`\n let hash_from_typescript = 0x0081edf209e087ad31b3fd24263698723d57190bd1d6e9fe056fc0c0a68ee661;\n\n assert_eq(hash, hash_from_typescript);\n}\n\n#[test]\nunconstrained fn poseidon2_hash_with_separator_bounded_vec_matches_non_bounded_vec_version() {\n let inputs = BoundedVec::<Field, 4>::from_array([1, 2, 3]);\n let separator = 42;\n\n // Hash using bounded vec version\n let bounded_result = poseidon2_hash_with_separator_bounded_vec(inputs, separator);\n\n // Hash using regular version\n let regular_result = poseidon2_hash_with_separator([1, 2, 3], separator);\n\n // Results should match\n assert_eq(bounded_result, regular_result);\n}\n"
4577
4577
  },
4578
- "352": {
4578
+ "354": {
4579
4579
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/meta/mod.nr",
4580
4580
  "source": "use utils::derive_serialization_quotes;\n\npub mod utils;\n\n/// Generates the generic parameter declarations for a struct's trait implementation.\n///\n/// This function takes a struct type definition and generates the generic parameter declarations\n/// that go after the `impl` keyword. For example, given a struct with generics `N: u32` and `T`,\n/// it generates `<let N: u32, T>`.\n///\n/// # Parameters\n/// - `s`: The struct type definition to generate generic declarations for\n///\n/// # Returns\n/// A quoted code block containing the generic parameter declarations, or an empty quote if the struct\n/// has no generic parameters\n///\n/// # Example\n/// For a struct defined as:\n/// ```\n/// struct Container<T, let N: u32> {\n/// items: [T; N],\n/// count: u32\n/// }\n/// ```\n///\n/// This function generates:\n/// ```\n/// <let N: u32, T>\n/// ```\ncomptime fn get_generics_declarations(s: TypeDefinition) -> Quoted {\n let generics = s.generics();\n\n if generics.len() > 0 {\n let generics_declarations_items = generics\n .map(|(name, maybe_integer_typ)| {\n // The second item in the generics tuple is an Option of an integer type that is Some only if\n // the generic is numeric.\n if maybe_integer_typ.is_some() {\n // The generic is numeric, so we return a quote defined as e.g. \"let N: u32\"\n let integer_type = maybe_integer_typ.unwrap();\n quote {let $name: $integer_type}\n } else {\n // The generic is not numeric, so we return a quote containing the name of the generic (e.g. \"T\")\n quote {$name}\n }\n })\n .join(quote {,});\n quote {<$generics_declarations_items>}\n } else {\n // The struct doesn't have any generics defined, so we just return an empty quote.\n quote {}\n }\n}\n\n/// Generates the `where` clause for a trait implementation that constrains non-numeric generic type parameters.\n///\n/// This function takes a struct type definition and a trait name, and generates a `where` clause that\n/// requires all non-numeric generic type parameters to implement the specified trait.\n///\n/// # Parameters\n/// - `s`: The struct type definition to generate the where clause for\n/// - `trait_name`: The name of the trait that non-numeric generic parameters must implement\n///\n/// # Returns\n/// A quoted code block containing the where clause, or an empty quote if the struct has no non-numeric\n/// generic parameters\n///\n/// # Example\n/// For a struct defined as:\n/// ```\n/// struct Container<T, let N: u32> {\n/// items: [T; N],\n/// count: u32\n/// }\n/// ```\n///\n/// And trait name \"Serialize\", this function generates:\n/// ```\n/// where T: Serialize\n/// ```\ncomptime fn get_where_trait_clause(s: TypeDefinition, trait_name: Quoted) -> Quoted {\n let generics = s.generics();\n\n // The second item in the generics tuple is an Option of an integer type that is Some only if the generic is\n // numeric.\n let non_numeric_generics =\n generics.filter(|(_, maybe_integer_typ)| maybe_integer_typ.is_none());\n\n if non_numeric_generics.len() > 0 {\n let non_numeric_generics_declarations =\n non_numeric_generics.map(|(name, _)| quote {$name: $trait_name}).join(quote {,});\n quote {where $non_numeric_generics_declarations}\n } else {\n // There are no non-numeric generics, so we return an empty quote.\n quote {}\n }\n}\n\n/// Generates a `Serialize` trait implementation for a struct type.\n///\n/// # Parameters\n/// - `s`: The struct type definition to generate the implementation for\n///\n/// # Returns\n/// A quoted code block containing the trait implementation\n///\n/// # Example\n/// For a struct defined as:\n/// ```\n/// struct Log<N> {\n/// fields: [Field; N],\n/// length: u32\n/// }\n/// ```\n///\n/// This function generates code equivalent to:\n/// ```\n/// impl<let N: u32> Serialize for Log<N> {\n/// let N: u32 = <[Field; N] as Serialize>::N + <u32 as Serialize>::N;\n///\n/// #[inline_always]\n/// fn serialize(self) -> [Field; Self::N] {\n/// let mut serialized_params = [0; _];\n/// let mut offset = 0;\n///\n/// let serialized_member = Serialize::serialize(self.fields);\n/// let serialized_member_len = <[Field; N] as Serialize>::N;\n/// for i in 0..serialized_member_len {\n/// serialized_params[i + offset] = serialized_member[i];\n/// }\n/// offset += serialized_member_len;\n///\n/// let serialized_member = Serialize::serialize(self.length);\n/// let serialized_member_len = <u32 as Serialize>::N;\n/// for i in 0..serialized_member_len {\n/// serialized_params[i + offset] = serialized_member[i];\n/// }\n/// offset += serialized_member_len;\n///\n/// serialized_params\n/// }\n/// }\n/// ```\npub comptime fn derive_serialize(s: TypeDefinition) -> Quoted {\n let typ = s.as_type();\n let nested_struct = typ.as_data_type().unwrap();\n\n // We care only about the name and type so we drop the last item of the tuple\n let params = nested_struct.0.fields(nested_struct.1).map(|(name, typ, _)| (name, typ));\n\n // Generates the generic parameter declarations (to be placed after the `impl` keyword) and the `where` clause\n // for the `Serialize` trait.\n let generics_declarations = get_generics_declarations(s);\n let where_serialize_clause = get_where_trait_clause(s, quote {Serialize});\n\n let (function_body, params_len_quote, serialized_params_name) =\n derive_serialization_quotes(params, true);\n\n quote {\n impl$generics_declarations $crate::traits::Serialize for $typ\n $where_serialize_clause\n {\n let N: u32 = $params_len_quote;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n $function_body\n\n $serialized_params_name\n }\n }\n }\n}\n\n/// Generates a `Deserialize` trait implementation for a given struct `s`.\n///\n/// # Arguments\n/// * `s` - The struct type definition to generate the implementation for\n///\n/// # Returns\n/// A `Quoted` block containing the generated trait implementation\n///\n/// # Requirements\n/// Each struct member type must implement the `Deserialize` trait (it gets used in the generated code).\n///\n/// # Example\n/// For a struct like:\n/// ```\n/// struct MyStruct {\n/// x: AztecAddress,\n/// y: Field,\n/// }\n/// ```\n///\n/// This generates:\n/// ```\n/// impl Deserialize for MyStruct {\n/// let N: u32 = <AztecAddress as Deserialize>::N + <Field as Deserialize>::N;\n///\n/// fn deserialize(serialized: [Field; Self::N]) -> Self {\n/// let mut offset = 0;\n/// let mut member_fields = [0; <AztecAddress as Deserialize>::N];\n/// for i in 0..<AztecAddress as Deserialize>::N {\n/// member_fields[i] = serialized[i + offset];\n/// }\n/// let x = <AztecAddress as Deserialize>::deserialize(member_fields);\n/// offset += <AztecAddress as Deserialize>::N;\n///\n/// let mut member_fields = [0; <Field as Deserialize>::N];\n/// for i in 0..<Field as Deserialize>::N {\n/// member_fields[i] = serialized[i + offset];\n/// }\n/// let y = <Field as Deserialize>::deserialize(member_fields);\n/// offset += <Field as Deserialize>::N;\n///\n/// Self { x, y }\n/// }\n/// }\n/// ```\npub(crate) comptime fn derive_deserialize(s: TypeDefinition) -> Quoted {\n let typ = s.as_type();\n let nested_struct = typ.as_data_type().unwrap();\n let params = nested_struct.0.fields(nested_struct.1);\n\n // Generates the generic parameter declarations (to be placed after the `impl` keyword) and the `where` clause\n // for the `Deserialize` trait.\n let generics_declarations = get_generics_declarations(s);\n let where_deserialize_clause = get_where_trait_clause(s, quote {Deserialize});\n\n // The following will give us:\n // <type_of_struct_member_1 as Deserialize>::N + <type_of_struct_member_2 as Deserialize>::N + ...\n // (or 0 if the struct has no members)\n let right_hand_side_of_definition_of_n = if params.len() > 0 {\n params\n .map(|(_, param_type, _): (Quoted, Type, Quoted)| {\n quote {\n <$param_type as $crate::traits::Deserialize>::N\n }\n })\n .join(quote {+})\n } else {\n quote {0}\n };\n\n // For structs containing a single member, we can enhance performance by directly deserializing the input array,\n // bypassing the need for loop-based array construction. While this optimization yields significant benefits in\n // Brillig where the loops are expected to not be optimized, it is not relevant in ACIR where the loops are\n // expected to be optimized away.\n let function_body = if params.len() > 1 {\n // This generates deserialization code for each struct member and concatenates them together.\n let deserialization_of_struct_members = params\n .map(|(param_name, param_type, _): (Quoted, Type, Quoted)| {\n quote {\n let mut member_fields = [0; <$param_type as Deserialize>::N];\n for i in 0..<$param_type as Deserialize>::N {\n member_fields[i] = serialized[i + offset];\n }\n let $param_name = <$param_type as Deserialize>::deserialize(member_fields);\n offset += <$param_type as Deserialize>::N;\n }\n })\n .join(quote {});\n\n // We join the struct member names with a comma to be used in the `Self { ... }` syntax\n // This will give us e.g. `a, b, c` for a struct with three fields named `a`, `b`, and `c`.\n let struct_members = params\n .map(|(param_name, _, _): (Quoted, Type, Quoted)| quote { $param_name })\n .join(quote {,});\n\n quote {\n let mut offset = 0;\n\n $deserialization_of_struct_members\n\n Self { $struct_members }\n }\n } else if params.len() == 1 {\n let param_name = params[0].0;\n quote {\n Self { $param_name: $crate::traits::Deserialize::deserialize(serialized) }\n }\n } else {\n quote {\n Self {}\n }\n };\n\n quote {\n impl$generics_declarations $crate::traits::Deserialize for $typ\n $where_deserialize_clause\n {\n let N: u32 = $right_hand_side_of_definition_of_n;\n\n #[inline_always]\n fn deserialize(serialized: [Field; Self::N]) -> Self {\n $function_body\n }\n }\n }\n}\n\n/// Generates a `Packable` trait implementation for a given struct `s`.\n///\n/// # Arguments\n/// * `s` - The struct type definition to generate the implementation for\n///\n/// # Returns\n/// A `Quoted` block containing the generated trait implementation\n///\n/// # Requirements\n/// Each struct member type must implement the `Packable` trait (it gets used in the generated code).\n///\n/// # Example\n/// For a struct like:\n/// ```\n/// struct MyStruct {\n/// x: AztecAddress,\n/// y: Field,\n/// }\n/// ```\n///\n/// This generates:\n/// ```\n/// impl Packable for MyStruct {\n/// let N: u32 = 2;\n///\n/// fn pack(self) -> [Field; 2] {\n/// let mut result: [Field; 2] = [0_Field; 2];\n/// let mut offset: u32 = 0_u32;\n/// let packed_member: [Field; 1] = self.x.pack();\n/// let packed_member_len: u32 = <Field as Packable>::N;\n/// for i in 0_u32..packed_member_len {\n/// {\n/// result[i + offset] = packed_member[i];\n/// }\n/// }\n/// offset = offset + packed_member_len;\n/// let packed_member: [Field; 1] = self.y.pack();\n/// let packed_member_len: u32 = <Field as Packable>::N;\n/// for i in 0_u32..packed_member_len {\n/// {\n/// result[i + offset] = packed_member[i];\n/// }\n/// }\n/// offset = offset + packed_member_len;\n/// result\n/// }\n///\n/// fn unpack(packed: [Field; 2]) -> Self {\n/// let mut offset: u32 = 0_u32;\n/// let mut member_fields: [Field; 1] = [0_Field; 1];\n/// for i in 0_u32..<AztecAddress as Packable>::N {\n/// member_fields[i] = packed[i + offset];\n/// }\n/// let x: AztecAddress = <AztecAddress as Packable>::unpack(member_fields);\n/// offset = offset + <AztecAddress as Packable>::N;\n/// let mut member_fields: [Field; 1] = [0_Field; 1];\n/// for i in 0_u32..<Field as Packable>::N {\n/// member_fields[i] = packed[i + offset];\n/// }\n/// let y: Field = <Field as Packable>::unpack(member_fields);\n/// offset = offset + <Field as Packable>::N;\n/// Self { x: x, y: y }\n/// }\n/// }\n/// ```\npub comptime fn derive_packable(s: TypeDefinition) -> Quoted {\n let typ = s.as_type();\n let nested_struct = typ.as_data_type().unwrap();\n let params = nested_struct.0.fields(nested_struct.1);\n\n // Generates the generic parameter declarations (to be placed after the `impl` keyword) and the `where` clause\n // for the `Packable` trait.\n let generics_declarations = get_generics_declarations(s);\n let where_packable_clause = get_where_trait_clause(s, quote {Packable});\n\n // The following will give us:\n // <type_of_struct_member_1 as Packable>::N + <type_of_struct_member_2 as Packable>::N + ...\n // (or 0 if the struct has no members)\n let right_hand_side_of_definition_of_n = if params.len() > 0 {\n params\n .map(|(_, param_type, _): (Quoted, Type, Quoted)| {\n quote {\n <$param_type as $crate::traits::Packable>::N\n }\n })\n .join(quote {+})\n } else {\n quote {0}\n };\n\n // For structs containing a single member, we can enhance performance by directly returning the packed member,\n // bypassing the need for loop-based array construction. While this optimization yields significant benefits in\n // Brillig where the loops are expected to not be optimized, it is not relevant in ACIR where the loops are\n // expected to be optimized away.\n let pack_function_body = if params.len() > 1 {\n // For multiple struct members, generate packing code that:\n // 1. Packs each member\n // 2. Copies the packed fields into the result array at the correct offset\n // 3. Updates the offset for the next member\n let packing_of_struct_members = params\n .map(|(param_name, param_type, _): (Quoted, Type, Quoted)| {\n quote {\n let packed_member = $crate::traits::Packable::pack(self.$param_name);\n let packed_member_len = <$param_type as $crate::traits::Packable>::N;\n for i in 0..packed_member_len {\n result[i + offset] = packed_member[i];\n }\n offset += packed_member_len;\n }\n })\n .join(quote {});\n\n quote {\n let mut result = [0; Self::N];\n let mut offset = 0;\n\n $packing_of_struct_members\n\n result\n }\n } else if params.len() == 1 {\n let param_name = params[0].0;\n quote {\n $crate::traits::Packable::pack(self.$param_name)\n }\n } else {\n quote {\n [0; Self::N]\n }\n };\n\n // For structs containing a single member, we can enhance performance by directly unpacking the input array,\n // bypassing the need for loop-based array construction. While this optimization yields significant benefits in\n // Brillig where the loops are expected to not be optimized, it is not relevant in ACIR where the loops are\n // expected to be optimized away.\n let unpack_function_body = if params.len() > 1 {\n // For multiple struct members, generate unpacking code that:\n // 1. Unpacks each member\n // 2. Copies packed fields into member array at correct offset\n // 3. Updates offset for next member\n let unpacking_of_struct_members = params\n .map(|(param_name, param_type, _): (Quoted, Type, Quoted)| {\n quote {\n let mut member_fields = [0; <$param_type as $crate::traits::Packable>::N];\n for i in 0..<$param_type as $crate::traits::Packable>::N {\n member_fields[i] = packed[i + offset];\n }\n let $param_name = <$param_type as $crate::traits::Packable>::unpack(member_fields);\n offset += <$param_type as $crate::traits::Packable>::N;\n }\n })\n .join(quote {});\n\n // We join the struct member names with a comma to be used in the `Self { ... }` syntax\n let struct_members = params\n .map(|(param_name, _, _): (Quoted, Type, Quoted)| quote { $param_name })\n .join(quote {,});\n\n quote {\n let mut offset = 0;\n $unpacking_of_struct_members\n Self { $struct_members }\n }\n } else if params.len() == 1 {\n let param_name = params[0].0;\n quote {\n Self { $param_name: $crate::traits::Packable::unpack(packed) }\n }\n } else {\n quote {\n Self {}\n }\n };\n\n quote {\n impl$generics_declarations $crate::traits::Packable for $typ\n $where_packable_clause\n {\n let N: u32 = $right_hand_side_of_definition_of_n;\n\n #[inline_always]\n fn pack(self) -> [Field; Self::N] {\n $pack_function_body\n }\n\n #[inline_always]\n fn unpack(packed: [Field; Self::N]) -> Self {\n $unpack_function_body\n }\n }\n }\n}\n\nmod test {\n use crate::traits::{Deserialize, Packable, Serialize};\n\n #[derive(Deserialize, Eq, Packable, Serialize)]\n pub struct Empty {}\n\n #[derive(Deserialize, Eq, Packable, Serialize)]\n pub struct Smol {\n a: Field,\n b: Field,\n }\n\n #[derive(Deserialize, Eq, Serialize)]\n pub struct HasArray {\n a: [Field; 2],\n b: bool,\n }\n\n #[derive(Deserialize, Eq, Serialize)]\n pub struct Fancier {\n a: Smol,\n b: [Field; 2],\n c: [u8; 3],\n d: str<16>,\n }\n\n #[derive(Deserialize, Eq, Packable, Serialize)]\n pub struct HasArrayWithGenerics<T, let N: u32> {\n pub fields: [T; N],\n pub length: u32,\n }\n\n #[test]\n fn serde_on_empty() {\n let original = Empty {};\n let serialized = original.serialize();\n assert_eq(serialized, [], \"Serialized does not match empty array\");\n let deserialized = Empty::deserialize(serialized);\n assert_eq(deserialized, original, \"Deserialized does not match original\");\n }\n\n #[test]\n fn packable_on_empty() {\n let original = Empty {};\n let packed = original.pack();\n assert_eq(packed, [], \"Packed does not match empty array\");\n let unpacked = Empty::unpack(packed);\n assert_eq(unpacked, original, \"Unpacked does not match original\");\n }\n\n #[test]\n fn serde_on_smol() {\n let smol = Smol { a: 1, b: 2 };\n let serialized = smol.serialize();\n assert(serialized == [1, 2], serialized);\n let deserialized = Smol::deserialize(serialized);\n assert(deserialized == smol);\n\n // None of the struct members implements the `Packable` trait so the packed and serialized data should be the same\n let packed = smol.pack();\n assert_eq(packed, serialized, \"Packed does not match serialized\");\n }\n\n #[test]\n fn serde_on_has_array() {\n let has_array = HasArray { a: [1, 2], b: true };\n let serialized = has_array.serialize();\n assert(serialized == [1, 2, 1], serialized);\n let deserialized = HasArray::deserialize(serialized);\n assert(deserialized == has_array);\n }\n\n #[test]\n fn serde_on_fancier() {\n let fancier =\n Fancier { a: Smol { a: 1, b: 2 }, b: [0, 1], c: [1, 2, 3], d: \"metaprogramming!\" };\n let serialized = fancier.serialize();\n assert(\n serialized\n == [\n 1, 2, 0, 1, 1, 2, 3, 0x6d, 0x65, 0x74, 0x61, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61,\n 0x6d, 0x6d, 0x69, 0x6e, 0x67, 0x21,\n ],\n serialized,\n );\n let deserialized = Fancier::deserialize(serialized);\n assert(deserialized == fancier);\n }\n\n #[test]\n fn serde_on_contains_array_with_generics() {\n let struct_with_array_of_generics = HasArrayWithGenerics { fields: [1, 2, 3], length: 3 };\n let serialized = struct_with_array_of_generics.serialize();\n assert(serialized == [1, 2, 3, 3], serialized);\n let deserialized = HasArrayWithGenerics::deserialize(serialized);\n assert(deserialized == struct_with_array_of_generics);\n }\n\n #[test]\n fn packable_on_contains_array_with_generics() {\n let struct_with_array_of_generics = HasArrayWithGenerics { fields: [1, 2, 3], length: 3 };\n let packed = struct_with_array_of_generics.pack();\n assert(packed == [1, 2, 3, 3], packed);\n\n let unpacked = HasArrayWithGenerics::unpack(packed);\n assert(unpacked == struct_with_array_of_generics);\n }\n\n}\n"
4581
4581
  },
4582
- "353": {
4582
+ "355": {
4583
4583
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/meta/utils.nr",
4584
4584
  "source": "/// Generates serialization code for a list of parameters and the total length of the serialized array\n///\n/// # Parameters\n/// - `params`: A list of (name, type) tuples to serialize\n/// - `use_self_prefix`: If true, parameters are accessed as `self.$param_name` (for struct members).\n/// If false, parameters are accessed directly as `$param_name` (for function parameters).\n///\n/// # Returns\n/// A tuple containing:\n/// - Quoted code that serializes the parameters into an array named `serialized_params`\n/// - Quoted code that evaluates to the total length of the serialized array\n/// - Quoted code containing the name of the serialized array\npub comptime fn derive_serialization_quotes(\n params: [(Quoted, Type)],\n use_self_prefix: bool,\n) -> (Quoted, Quoted, Quoted) {\n let prefix_quote = if use_self_prefix {\n quote { self. }\n } else {\n quote {}\n };\n\n let params_len_quote = get_params_len_quote(params);\n let serialized_params_name = quote { serialized_params };\n\n let body = if params.len() == 0 {\n quote {\n let $serialized_params_name: [Field; 0] = [];\n }\n } else if params.len() == 1 {\n // When we have only a single parameter on the input, we can enhance performance by directly returning\n // the serialized member, bypassing the need for loop-based array construction. While this optimization yields\n // significant benefits in Brillig where the loops are expected to not be optimized, it is not relevant in ACIR\n // where the loops are expected to be optimized away.\n\n let param_name = params[0].0;\n quote {\n let $serialized_params_name = $crate::traits::Serialize::serialize($prefix_quote$param_name);\n }\n } else {\n // For multiple struct members, generate serialization code that:\n // 1. Serializes each member\n // 2. Copies the serialized fields into the serialize array at the correct offset\n // 3. Updates the offset for the next member\n let serialization_of_struct_members = params\n .map(|(param_name, param_type): (Quoted, Type)| {\n quote {\n let serialized_member = $crate::traits::Serialize::serialize($prefix_quote$param_name);\n let serialized_member_len = <$param_type as $crate::traits::Serialize>::N;\n for i in 0..serialized_member_len {\n $serialized_params_name[i + offset] = serialized_member[i];\n }\n offset += serialized_member_len;\n }\n })\n .join(quote {});\n\n quote {\n let mut $serialized_params_name = [0; $params_len_quote];\n let mut offset = 0;\n\n $serialization_of_struct_members\n }\n };\n\n (body, params_len_quote, serialized_params_name)\n}\n\n/// Generates a quoted expression that computes the total serialized length of function parameters.\n///\n/// # Parameters\n/// * `params` - An array of tuples where each tuple contains a quoted parameter name and its Type. The type needs\n/// to implement the Serialize trait.\n///\n/// # Returns\n/// A quoted expression that evaluates to:\n/// * `0` if there are no parameters\n/// * `(<type1 as Serialize>::N + <type2 as Serialize>::N + ...)` for one or more parameters\npub comptime fn get_params_len_quote(params: [(Quoted, Type)]) -> Quoted {\n if params.len() == 0 {\n quote { 0 }\n } else {\n let params_quote_without_parentheses = params\n .map(|(_, param_type): (Quoted, Type)| {\n quote {\n <$param_type as $crate::traits::Serialize>::N\n }\n })\n .join(quote {+});\n quote { ($params_quote_without_parentheses) }\n }\n}\n"
4585
4585
  },
4586
- "354": {
4586
+ "356": {
4587
4587
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/point.nr",
4588
4588
  "source": "pub use dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\nuse crate::{hash::poseidon2_hash, traits::{Deserialize, Empty, Hash, Packable, Serialize}};\n\npub global POINT_LENGTH: u32 = 3;\n\n// Note: Not deriving this because it's not supported to call derive_serialize on a \"remote\" struct (and it will never\n// be supported).\nimpl Serialize for Point {\n let N: u32 = POINT_LENGTH;\n\n fn serialize(self: Self) -> [Field; Self::N] {\n [self.x, self.y, self.is_infinite as Field]\n }\n}\n\nimpl Hash for Point {\n fn hash(self) -> Field {\n poseidon2_hash(self.serialize())\n }\n}\n\nimpl Empty for Point {\n /// Note: Does not return a valid point on curve - instead represents an empty/\"unpopulated\" point struct (e.g.\n /// empty/unpopulated value in an array of points).\n fn empty() -> Self {\n Point { x: 0, y: 0, is_infinite: false }\n }\n}\n\nimpl Deserialize for Point {\n let N: u32 = POINT_LENGTH;\n\n fn deserialize(serialized: [Field; Self::N]) -> Self {\n Point { x: serialized[0], y: serialized[1], is_infinite: serialized[2] != 0 }\n }\n}\n\n// TODO(#11356): use compact representation here.\nimpl Packable for Point {\n let N: u32 = POINT_LENGTH;\n\n fn pack(self) -> [Field; Self::N] {\n self.serialize()\n }\n\n fn unpack(packed: [Field; Self::N]) -> Self {\n Self::deserialize(packed)\n }\n}\n"
4589
4589
  },
4590
- "355": {
4590
+ "357": {
4591
4591
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/poseidon2.nr",
4592
4592
  "source": "use crate::constants::TWO_POW_64;\nuse crate::traits::{Deserialize, Serialize};\nuse std::meta::derive;\n// NB: This is a clone of noir/noir-repo/noir_stdlib/src/hash/poseidon2.nr\n// It exists as we sometimes need to perform custom absorption, but the stdlib version\n// has a private absorb() method (it's also designed to just be a hasher)\n// Can be removed when standalone noir poseidon lib exists: See noir#6679\n\ncomptime global RATE: u32 = 3;\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct Poseidon2Sponge {\n pub cache: [Field; 3],\n pub state: [Field; 4],\n pub cache_size: u32,\n pub squeeze_mode: bool, // 0 => absorb, 1 => squeeze\n}\n\nimpl Poseidon2Sponge {\n #[no_predicates]\n pub fn hash<let N: u32>(input: [Field; N], message_size: u32) -> Field {\n Poseidon2Sponge::hash_internal(input, message_size, message_size != N)\n }\n\n pub(crate) fn new(iv: Field) -> Poseidon2Sponge {\n let mut result =\n Poseidon2Sponge { cache: [0; 3], state: [0; 4], cache_size: 0, squeeze_mode: false };\n result.state[RATE] = iv;\n result\n }\n\n fn perform_duplex(&mut self) {\n // add the cache into sponge state\n for i in 0..RATE {\n // We effectively zero-pad the cache by only adding to the state\n // cache that is less than the specified `cache_size`\n if i < self.cache_size {\n self.state[i] += self.cache[i];\n }\n }\n self.state = std::hash::poseidon2_permutation(self.state, 4);\n }\n\n pub fn absorb(&mut self, input: Field) {\n assert(!self.squeeze_mode);\n if self.cache_size == RATE {\n // If we're absorbing, and the cache is full, apply the sponge permutation to compress the cache\n self.perform_duplex();\n self.cache[0] = input;\n self.cache_size = 1;\n } else {\n // If we're absorbing, and the cache is not full, add the input into the cache\n self.cache[self.cache_size] = input;\n self.cache_size += 1;\n }\n }\n\n pub fn squeeze(&mut self) -> Field {\n assert(!self.squeeze_mode);\n // If we're in absorb mode, apply sponge permutation to compress the cache.\n self.perform_duplex();\n self.squeeze_mode = true;\n\n // Pop one item off the top of the permutation and return it.\n self.state[0]\n }\n\n fn hash_internal<let N: u32>(\n input: [Field; N],\n in_len: u32,\n is_variable_length: bool,\n ) -> Field {\n let iv: Field = (in_len as Field) * TWO_POW_64;\n let mut sponge = Poseidon2Sponge::new(iv);\n for i in 0..input.len() {\n if i < in_len {\n sponge.absorb(input[i]);\n }\n }\n\n // In the case where the hash preimage is variable-length, we append `1` to the end of the input, to distinguish\n // from fixed-length hashes. (the combination of this additional field element + the hash IV ensures\n // fixed-length and variable-length hashes do not collide)\n if is_variable_length {\n sponge.absorb(1);\n }\n sponge.squeeze()\n }\n}\n"
4593
4593
  },
4594
- "362": {
4594
+ "364": {
4595
4595
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/public_keys.nr",
4596
4596
  "source": "use crate::{\n address::public_keys_hash::PublicKeysHash,\n constants::{\n DEFAULT_IVPK_M_X, DEFAULT_IVPK_M_Y, DEFAULT_NPK_M_X, DEFAULT_NPK_M_Y, DEFAULT_OVPK_M_X,\n DEFAULT_OVPK_M_Y, DEFAULT_TPK_M_X, DEFAULT_TPK_M_Y, GENERATOR_INDEX__PUBLIC_KEYS_HASH,\n },\n hash::poseidon2_hash_with_separator,\n traits::{Deserialize, Hash, Serialize},\n};\n\nuse dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\nuse std::{default::Default, meta::derive};\n\npub trait ToPoint {\n fn to_point(self) -> Point;\n}\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct NpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for NpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\n// Note: If we store npk_m_hash directly we can remove this trait implementation. See #8091\nimpl Hash for NpkM {\n fn hash(self) -> Field {\n self.inner.hash()\n }\n}\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct IvpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for IvpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct OvpkM {\n pub inner: Point,\n}\n\nimpl Hash for OvpkM {\n fn hash(self) -> Field {\n self.inner.hash()\n }\n}\n\nimpl ToPoint for OvpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct TpkM {\n pub inner: Point,\n}\n\nimpl ToPoint for TpkM {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\n#[derive(Deserialize, Eq, Serialize)]\npub struct PublicKeys {\n pub npk_m: NpkM,\n pub ivpk_m: IvpkM,\n pub ovpk_m: OvpkM,\n pub tpk_m: TpkM,\n}\n\nimpl Default for PublicKeys {\n fn default() -> Self {\n PublicKeys {\n npk_m: NpkM {\n inner: Point { x: DEFAULT_NPK_M_X, y: DEFAULT_NPK_M_Y, is_infinite: false },\n },\n ivpk_m: IvpkM {\n inner: Point { x: DEFAULT_IVPK_M_X, y: DEFAULT_IVPK_M_Y, is_infinite: false },\n },\n ovpk_m: OvpkM {\n inner: Point { x: DEFAULT_OVPK_M_X, y: DEFAULT_OVPK_M_Y, is_infinite: false },\n },\n tpk_m: TpkM {\n inner: Point { x: DEFAULT_TPK_M_X, y: DEFAULT_TPK_M_Y, is_infinite: false },\n },\n }\n }\n}\n\nimpl PublicKeys {\n pub fn hash(self) -> PublicKeysHash {\n PublicKeysHash::from_field(poseidon2_hash_with_separator(\n self.serialize(),\n GENERATOR_INDEX__PUBLIC_KEYS_HASH as Field,\n ))\n }\n}\n\npub struct AddressPoint {\n pub inner: Point,\n}\n\nimpl ToPoint for AddressPoint {\n fn to_point(self) -> Point {\n self.inner\n }\n}\n\nmod test {\n use crate::{\n point::POINT_LENGTH,\n public_keys::{IvpkM, NpkM, OvpkM, PublicKeys, TpkM},\n traits::{Deserialize, Serialize},\n };\n use dep::std::embedded_curve_ops::EmbeddedCurvePoint as Point;\n\n #[test]\n unconstrained fn compute_public_keys_hash() {\n let keys = PublicKeys {\n npk_m: NpkM { inner: Point { x: 1, y: 2, is_infinite: false } },\n ivpk_m: IvpkM { inner: Point { x: 3, y: 4, is_infinite: false } },\n ovpk_m: OvpkM { inner: Point { x: 5, y: 6, is_infinite: false } },\n tpk_m: TpkM { inner: Point { x: 7, y: 8, is_infinite: false } },\n };\n\n let actual = keys.hash();\n let expected_public_keys_hash =\n 0x0fecd9a32db731fec1fded1b9ff957a1625c069245a3613a2538bd527068b0ad;\n\n assert(actual.to_field() == expected_public_keys_hash);\n }\n\n #[test]\n unconstrained fn compute_default_hash() {\n let keys = PublicKeys::default();\n\n let actual = keys.hash();\n let test_data_default_hash =\n 0x1d3bf1fb93ae0e9cda83b203dd91c3bfb492a9aecf30ec90e1057eced0f0e62d;\n\n assert(actual.to_field() == test_data_default_hash);\n }\n\n #[test]\n unconstrained fn serde() {\n let keys = PublicKeys {\n npk_m: NpkM { inner: Point { x: 1, y: 2, is_infinite: false } },\n ivpk_m: IvpkM { inner: Point { x: 3, y: 4, is_infinite: false } },\n ovpk_m: OvpkM { inner: Point { x: 5, y: 6, is_infinite: false } },\n tpk_m: TpkM { inner: Point { x: 7, y: 8, is_infinite: false } },\n };\n\n // We use the PUBLIC_KEYS_LENGTH constant to ensure that there is a match between the derived trait\n let serialized: [Field; POINT_LENGTH * 4] = keys.serialize();\n let deserialized = PublicKeys::deserialize(serialized);\n\n assert_eq(keys, deserialized);\n }\n}\n"
4597
4597
  },
4598
- "383": {
4598
+ "385": {
4599
4599
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/traits.nr",
4600
4600
  "source": "use crate::meta::{derive_deserialize, derive_packable, derive_serialize};\nuse crate::utils::field::field_from_bytes;\n\n// Trait: is_empty\n//\n// The general is_empty trait checks if a data type is is empty,\n// and it defines empty for the basic data types as 0.\n//\n// If a Field is equal to zero, then it is regarded as zero.\n// We will go with this definition for now, however it can be problematic\n// if a value can actually be zero. In a future refactor, we can\n// use the optional type for safety. Doing it now would lead to a worse devex\n// and would make it harder to sync up with the cpp code.\n// Preferred over Default trait to convey intent, as default doesn't necessarily mean empty.\npub trait Empty: Eq {\n fn empty() -> Self;\n\n fn is_empty(self) -> bool {\n self.eq(Self::empty())\n }\n\n // Requires this Noir fix: https://github.com/noir-lang/noir/issues/9002\n // fn assert_not_empty<let U: u32>(self, msg: str<U>) { // This msg version was failing with weird compiler errors.\n // // We provide a default impl but it's likely inefficient.\n // // The reason we include this function is because there's a lot of\n // // opportunity for optimisation on a per-struct basis.\n // // You only need to show one element is not empty to know that the whole thing\n // // is not empty.\n // // If you know an element of your struct which should always be nonempty,\n // // you can write an impl that solely checks that that element is nonempty.\n // assert(!self.is_empty(), msg);\n // }\n\n // This default impl is overwritten by types like arrays, because there's a much\n // more efficient approach.\n fn assert_empty<let S: u32>(self, msg: str<S>) {\n assert(self.is_empty(), msg);\n }\n}\n\nimpl Empty for Field {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\n\nimpl Empty for bool {\n #[inline_always]\n fn empty() -> Self {\n false\n }\n}\n\nimpl Empty for u1 {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\nimpl Empty for u8 {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\nimpl Empty for u16 {\n fn empty() -> Self {\n 0\n }\n}\nimpl Empty for u32 {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\nimpl Empty for u64 {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\nimpl Empty for u128 {\n #[inline_always]\n fn empty() -> Self {\n 0\n }\n}\n\nimpl<T, let N: u32> Empty for [T; N]\nwhere\n T: Empty,\n{\n #[inline_always]\n fn empty() -> Self {\n [T::empty(); N]\n }\n\n fn is_empty(self) -> bool {\n self.all(|elem| elem.is_empty())\n }\n\n fn assert_empty<let S: u32>(self, msg: str<S>) -> () {\n self.for_each(|elem| elem.assert_empty(msg))\n }\n}\n\nimpl<T> Empty for [T]\nwhere\n T: Empty,\n{\n #[inline_always]\n fn empty() -> Self {\n [T::empty()]\n }\n\n fn is_empty(self) -> bool {\n self.all(|elem| elem.is_empty())\n }\n\n fn assert_empty<let S: u32>(self, msg: str<S>) -> () {\n self.for_each(|elem| elem.assert_empty(msg))\n }\n}\nimpl<A, B> Empty for (A, B)\nwhere\n A: Empty,\n B: Empty,\n{\n #[inline_always]\n fn empty() -> Self {\n (A::empty(), B::empty())\n }\n}\n\nimpl<T> Empty for Option<T>\nwhere\n T: Eq,\n{\n #[inline_always]\n fn empty() -> Self {\n Option::none()\n }\n}\n\n// pub fn is_empty<T>(item: T) -> bool\n// where\n// T: Empty,\n// {\n// item.eq(T::empty())\n// }\n\n// pub fn is_empty_array<T, let N: u32>(array: [T; N]) -> bool\n// where\n// T: Empty,\n// {\n// array.all(|elem| is_empty(elem))\n// }\n\n// pub fn assert_empty<T>(item: T) -> ()\n// where\n// T: Empty,\n// {\n// assert(item.eq(T::empty()))\n// }\n\n// pub fn assert_empty_array<T, let N: u32>(array: [T; N]) -> ()\n// where\n// T: Empty,\n// {\n// // A cheaper option than `is_empty_array` for if you don't need to gracefully\n// // handle a bool result.\n// // Avoids the `&` operator of `is_empty_array`'s `.all()` call.\n// for i in 0..N {\n// assert(is_empty(array[i]));\n// }\n// }\n\npub trait Hash {\n fn hash(self) -> Field;\n}\n\npub trait ToField {\n fn to_field(self) -> Field;\n}\n\nimpl ToField for Field {\n #[inline_always]\n fn to_field(self) -> Field {\n self\n }\n}\n\nimpl ToField for bool {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u1 {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u8 {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u16 {\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u32 {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u64 {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl ToField for u128 {\n #[inline_always]\n fn to_field(self) -> Field {\n self as Field\n }\n}\nimpl<let N: u32> ToField for str<N> {\n #[inline_always]\n fn to_field(self) -> Field {\n assert(N < 32, \"String doesn't fit in a field, consider using Serialize instead\");\n field_from_bytes(self.as_bytes(), true)\n }\n}\n\npub trait FromField {\n fn from_field(value: Field) -> Self;\n}\n\nimpl FromField for Field {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value\n }\n}\n\nimpl FromField for bool {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value != 0\n }\n}\nimpl FromField for u1 {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value as u1\n }\n}\nimpl FromField for u8 {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value as u8\n }\n}\nimpl FromField for u16 {\n fn from_field(value: Field) -> Self {\n value as u16\n }\n}\nimpl FromField for u32 {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value as u32\n }\n}\nimpl FromField for u64 {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value as u64\n }\n}\nimpl FromField for u128 {\n #[inline_always]\n fn from_field(value: Field) -> Self {\n value as u128\n }\n}\n\n// docs:start:serialize\n/// Trait for serializing Noir types into arrays of Fields.\n///\n/// An implementation of the Serialize trait has to follow Noir's intrinsic serialization (each member of a struct\n/// converted directly into one or more Fields without any packing or compression). This trait (and Deserialize) are\n/// typically used to communicate between Noir and TypeScript (via oracles and function arguments).\n///\n/// # On Following Noir's Intrinsic Serialization\n/// When calling a Noir function from TypeScript (TS), first the function arguments are serialized into an array\n/// of fields. This array is then included in the initial witness. Noir's intrinsic serialization is then used\n/// to deserialize the arguments from the witness. When the same Noir function is called from Noir this Serialize trait\n/// is used instead of the serialization in TS. For this reason we need to have a match between TS serialization,\n/// Noir's intrinsic serialization and the implementation of this trait. If there is a mismatch, the function calls\n/// fail with an arguments hash mismatch error message.\n///\n/// # Associated Constants\n/// * `N` - The length of the output Field array, known at compile time\n///\n/// # Example\n/// ```\n/// impl<let N: u32> Serialize for str<N> {\n/// let N: u32 = N;\n///\n/// fn serialize(self) -> [Field; Self::N] {\n/// let bytes = self.as_bytes();\n/// let mut fields = [0; Self::N];\n/// for i in 0..bytes.len() {\n/// fields[i] = bytes[i] as Field; // Each byte gets its own Field\n/// }\n/// fields\n/// }\n/// }\n/// ```\n#[derive_via(derive_serialize)]\npub trait Serialize {\n let N: u32;\n\n fn serialize(self) -> [Field; N];\n}\n// docs:end:serialize\n\nimpl<let M: u32> Serialize for str<M> {\n let N: u32 = M;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n let bytes = self.as_bytes();\n let mut fields = [0; Self::N];\n for i in 0..bytes.len() {\n fields[i] = bytes[i] as Field;\n }\n fields\n }\n}\n\n/// Implementation of Deserialize for BoundedVec.\n///\n/// This implementation deserializes a BoundedVec from an array of Fields. The array contains:\n/// 1. The serialized items, each taking up T::N Fields\n/// 2. The length of the BoundedVec as the last Field\n///\n/// # Type Parameters\n/// * `T` - The type of items stored in the BoundedVec, must implement Deserialize\n/// * `M` - The maximum length of the BoundedVec\n///\n/// # Fields Array Layout\n/// [item1_field1, item1_field2, ..., item2_field1, item2_field2, ..., length]\n/// Where:\n/// - itemN_fieldM: The M-th Field of the N-th item (T::N Fields per item)\n/// - length: The number of items in the BoundedVec (1 Field)\n///\n/// Total length N = T::N * M + 1, where:\n/// - T::N is the number of Fields needed to deserialize one item\n/// - M is the maximum length of the BoundedVec\n/// - +1 is for storing the length\n///\n/// # Note\n/// Not deriving this because it's not supported to call derive_deserialize on a \"remote\" struct (and it will never\n/// be supported).\nimpl<T, let M: u32> Deserialize for BoundedVec<T, M>\nwhere\n T: Deserialize,\n{\n let N: u32 = <T as Deserialize>::N * M + 1;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n let mut new_bounded_vec: BoundedVec<T, M> = BoundedVec::new();\n\n // Length is stored in the last field as we need to match intrinsic Noir serialization and the `len` struct\n // field is after `storage` struct field (see `bounded_vec.nr` in noir-stdlib)\n let len = fields[<T as Deserialize>::N * M] as u32;\n\n for i in 0..len {\n let mut nested_fields = [0; <T as Deserialize>::N];\n for j in 0..<T as Deserialize>::N {\n nested_fields[j] = fields[i * <T as Deserialize>::N + j];\n }\n\n let item = T::deserialize(nested_fields);\n new_bounded_vec.push(item);\n }\n\n new_bounded_vec\n }\n}\n\n// This may cause issues if used as program input, because noir disallows empty arrays for program input.\n// I think this is okay because I don't foresee a unit type being used as input. But leaving this comment as a hint\n// if someone does run into this in the future.\nimpl Deserialize for () {\n let N: u32 = 0;\n\n fn deserialize(_fields: [Field; Self::N]) -> Self {\n ()\n }\n}\n\n// Note: Not deriving this because it's not supported to call derive_serialize on a \"remote\" struct (and it will never\n// be supported).\nimpl<T, let M: u32> Serialize for BoundedVec<T, M>\nwhere\n T: Serialize,\n{\n let N: u32 = <T as Serialize>::N * M + 1; // +1 for the length of the BoundedVec\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n let mut fields = [0; Self::N];\n\n let storage = self.storage();\n\n for i in 0..M {\n let serialized_item = storage[i].serialize();\n\n for j in 0..<T as Serialize>::N {\n fields[i * <T as Serialize>::N + j] = serialized_item[j];\n }\n }\n\n // Length is stored in the last field as we need to match intrinsic Noir serialization and the `len` struct\n // field is after `storage` struct field (see `bounded_vec.nr` in noir-stdlib)\n fields[<T as Serialize>::N * M] = self.len() as Field;\n\n fields\n }\n}\n\n// docs:start:deserialize\n/// Trait for deserializing Noir types from arrays of Fields.\n///\n/// An implementation of the Deserialize trait has to follow Noir's intrinsic serialization (each member of a struct\n/// converted directly into one or more Fields without any packing or compression). This trait is typically used when\n/// deserializing return values from function calls in Noir. Since the same function could be called from TypeScript\n/// (TS), in which case the TS deserialization would get used, we need to have a match between the 2.\n///\n/// # Associated Constants\n/// * `N` - The length of the input Field array, known at compile time\n///\n/// # Example\n/// ```\n/// impl<let M: u32> Deserialize for str<M> {\n/// let N: u32 = M;\n///\n/// #[inline_always]\n/// fn deserialize(fields: [Field; Self::N]) -> Self {\n/// str::<Self::N>::from(fields.map(|value| value as u8))\n/// }\n/// }\n/// ```\n#[derive_via(derive_deserialize)]\npub trait Deserialize {\n let N: u32;\n\n fn deserialize(fields: [Field; N]) -> Self;\n}\n// docs:end:deserialize\n\nimpl<let M: u32> Deserialize for str<M> {\n let N: u32 = M;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n str::<Self::N>::from(fields.map(|value| value as u8))\n }\n}\n\n/// Trait for efficiently packing and unpacking Noir types into and from arrays of Fields.\n///\n/// The `Packable` trait allows types to be serialized and deserialized with a focus on minimizing the size of\n/// the resulting Field array. This trait is used when storage efficiency is critical (e.g. when storing data\n/// in the contract's public storage).\n///\n/// # Associated Constants\n/// * `N` - The length of the Field array, known at compile time\n#[derive_via(derive_packable)]\npub trait Packable {\n let N: u32;\n\n /// Packs the current value into a compact array of `Field` elements.\n fn pack(self) -> [Field; N];\n\n /// Unpacks a compact array of `Field` elements into the original value.\n fn unpack(fields: [Field; N]) -> Self;\n}\n\n#[test]\nunconstrained fn bounded_vec_serialization() {\n // Test empty BoundedVec\n let empty_vec: BoundedVec<Field, 3> = BoundedVec::from_array([]);\n let serialized = empty_vec.serialize();\n let deserialized = BoundedVec::<Field, 3>::deserialize(serialized);\n assert_eq(empty_vec, deserialized);\n assert_eq(deserialized.len(), 0);\n\n // Test partially filled BoundedVec\n let partial_vec: BoundedVec<[u32; 2], 3> = BoundedVec::from_array([[1, 2]]);\n let serialized = partial_vec.serialize();\n let deserialized = BoundedVec::<[u32; 2], 3>::deserialize(serialized);\n assert_eq(partial_vec, deserialized);\n assert_eq(deserialized.len(), 1);\n assert_eq(deserialized.get(0), [1, 2]);\n\n // Test full BoundedVec\n let full_vec: BoundedVec<[u32; 2], 3> = BoundedVec::from_array([[1, 2], [3, 4], [5, 6]]);\n let serialized = full_vec.serialize();\n let deserialized = BoundedVec::<[u32; 2], 3>::deserialize(serialized);\n assert_eq(full_vec, deserialized);\n assert_eq(deserialized.len(), 3);\n assert_eq(deserialized.get(0), [1, 2]);\n assert_eq(deserialized.get(1), [3, 4]);\n assert_eq(deserialized.get(2), [5, 6]);\n}\n"
4601
4601
  },
4602
- "386": {
4602
+ "388": {
4603
4603
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/type_serialization.nr",
4604
4604
  "source": "use crate::traits::{Deserialize, Serialize};\n\nglobal U1_SERIALIZED_LEN: u32 = 1;\nglobal BOOL_SERIALIZED_LEN: u32 = 1;\nglobal U8_SERIALIZED_LEN: u32 = 1;\nglobal U16_SERIALIZED_LEN: u32 = 1;\nglobal U32_SERIALIZED_LEN: u32 = 1;\nglobal U64_SERIALIZED_LEN: u32 = 1;\nglobal U128_SERIALIZED_LEN: u32 = 1;\nglobal FIELD_SERIALIZED_LEN: u32 = 1;\nglobal I8_SERIALIZED_LEN: u32 = 1;\nglobal I16_SERIALIZED_LEN: u32 = 1;\nglobal I32_SERIALIZED_LEN: u32 = 1;\nglobal I64_SERIALIZED_LEN: u32 = 1;\n\nimpl Serialize for bool {\n let N: u32 = BOOL_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for bool {\n let N: u32 = BOOL_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> bool {\n fields[0] != 0\n }\n}\n\nimpl Serialize for u1 {\n let N: u32 = U1_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u1 {\n let N: u32 = U1_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u1\n }\n}\n\nimpl Serialize for u8 {\n let N: u32 = U8_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u8 {\n let N: u32 = U8_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u8\n }\n}\n\nimpl Serialize for u16 {\n let N: u32 = U16_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u16 {\n let N: u32 = U16_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u16\n }\n}\n\nimpl Serialize for u32 {\n let N: u32 = U32_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u32 {\n let N: u32 = U32_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u32\n }\n}\n\nimpl Serialize for u64 {\n let N: u32 = U64_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u64 {\n let N: u32 = U64_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u64\n }\n}\n\nimpl Serialize for u128 {\n let N: u32 = U128_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as Field]\n }\n}\n\nimpl Deserialize for u128 {\n let N: u32 = U128_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u128\n }\n}\n\nimpl Serialize for Field {\n let N: u32 = FIELD_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self]\n }\n}\n\nimpl Deserialize for Field {\n let N: u32 = FIELD_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0]\n }\n}\n\nimpl Serialize for i8 {\n let N: u32 = I8_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as u8 as Field]\n }\n}\n\nimpl Deserialize for i8 {\n let N: u32 = I8_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u8 as i8\n }\n}\n\nimpl Serialize for i16 {\n let N: u32 = I16_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as u16 as Field]\n }\n}\n\nimpl Deserialize for i16 {\n let N: u32 = I16_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u16 as i16\n }\n}\n\nimpl Serialize for i32 {\n let N: u32 = I32_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as u32 as Field]\n }\n}\n\nimpl Deserialize for i32 {\n let N: u32 = I32_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u32 as i32\n }\n}\n\nimpl Serialize for i64 {\n let N: u32 = I64_SERIALIZED_LEN;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n [self as u64 as Field]\n }\n}\n\nimpl Deserialize for i64 {\n let N: u32 = I64_SERIALIZED_LEN;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n fields[0] as u64 as i64\n }\n}\n\nimpl<T, let M: u32> Serialize for [T; M]\nwhere\n T: Serialize,\n{\n let N: u32 = <T as Serialize>::N * M;\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n let mut result: [Field; _] = std::mem::zeroed();\n for i in 0..M {\n let serialized_t = self[i].serialize();\n for j in 0..<T as Serialize>::N {\n result[i * <T as Serialize>::N + j] = serialized_t[j];\n }\n }\n result\n }\n}\n\nimpl<T, let M: u32> Deserialize for [T; M]\nwhere\n T: Deserialize,\n{\n let N: u32 = <T as Deserialize>::N * M;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n let mut reader = crate::utils::reader::Reader::new(fields);\n let mut result: [T; M] = std::mem::zeroed();\n reader.read_struct_array::<T, <T as Deserialize>::N, M>(Deserialize::deserialize, result)\n }\n}\n\nimpl<T> Serialize for Option<T>\nwhere\n T: Serialize,\n{\n let N: u32 = <T as Serialize>::N + 1;\n\n #[inline_always]\n fn serialize(self) -> [Field; Self::N] {\n let mut result: [Field; Self::N] = std::mem::zeroed();\n\n result[0] = if self.is_some() { 1 } else { 0 };\n\n let value_serialized = self.unwrap_unchecked().serialize();\n for i in 0..<T as Serialize>::N {\n result[1 + i] = value_serialized[i];\n }\n\n result\n }\n}\n\nimpl<T> Deserialize for Option<T>\nwhere\n T: Deserialize,\n{\n let N: u32 = <T as Deserialize>::N + 1;\n\n #[inline_always]\n fn deserialize(fields: [Field; Self::N]) -> Self {\n if fields[0] == 1 {\n let mut value_fields = [0; <T as Deserialize>::N];\n for i in 0..<T as Deserialize>::N {\n value_fields[i] = fields[1 + i];\n }\n\n Option::some(T::deserialize(value_fields))\n } else {\n Option::none()\n }\n }\n}\n\nmod test {\n use crate::traits::{Deserialize, Serialize};\n\n #[test]\n fn u16_serialization() {\n let a: u16 = 10;\n assert_eq(a, u16::deserialize(a.serialize()));\n }\n\n #[test]\n fn i8_serialization() {\n let a: i8 = -10;\n assert_eq(a, i8::deserialize(a.serialize()));\n }\n\n #[test]\n fn i16_serialization() {\n let a: i16 = -10;\n assert_eq(a, i16::deserialize(a.serialize()));\n }\n\n #[test]\n fn i32_serialization() {\n let a: i32 = -10;\n assert_eq(a, i32::deserialize(a.serialize()));\n }\n\n #[test]\n fn i64_serialization() {\n let a: i64 = -10;\n assert_eq(a, i64::deserialize(a.serialize()));\n }\n\n #[test]\n fn option_field_serialization() {\n let opt_some = Option::some(5);\n assert_eq(Option::<_>::deserialize(opt_some.serialize()), opt_some);\n\n let opt_none = Option::none();\n assert_eq(Option::<Field>::deserialize(opt_none.serialize()), opt_none);\n }\n\n #[test]\n fn array_serialization() {\n let array = [1, 2, 3, 4];\n\n let serialized: [Field; 4] = array.serialize();\n let deserialized: [Field; 4] = Deserialize::deserialize(serialized);\n assert_eq(deserialized, array);\n }\n\n #[test]\n fn nested_array_serialization() {\n let nested_array = [[1, 2, 3, 4], [5, 6, 7, 8]];\n\n let serialized: [Field; 8] = nested_array.serialize();\n let deserialized: [[Field; 4]; 2] = Deserialize::deserialize(serialized);\n\n assert_eq(deserialized, nested_array);\n }\n\n #[test]\n fn option_array_serialization() {\n let opt_some = Option::some([2, 5]);\n assert_eq(Option::<_>::deserialize(opt_some.serialize()), opt_some);\n\n let opt_none = Option::none();\n assert_eq(Option::<Field>::deserialize(opt_none.serialize()), opt_none);\n }\n}\n"
4605
4605
  },
4606
- "391": {
4606
+ "393": {
4607
4607
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/utils/field.nr",
4608
4608
  "source": "global KNOWN_NON_RESIDUE: Field = 5; // This is a non-residue in Noir's native Field.\n\npub fn field_from_bytes<let N: u32>(bytes: [u8; N], big_endian: bool) -> Field {\n assert(bytes.len() < 32, \"field_from_bytes: N must be less than 32\");\n let mut as_field = 0;\n let mut offset = 1;\n for i in 0..N {\n let mut index = i;\n if big_endian {\n index = N - i - 1;\n }\n as_field += (bytes[index] as Field) * offset;\n offset *= 256;\n }\n\n as_field\n}\n\n// Convert a 32 byte array to a field element by truncating the final byte\npub fn field_from_bytes_32_trunc(bytes32: [u8; 32]) -> Field {\n // Convert it to a field element\n let mut v = 1;\n let mut high = 0 as Field;\n let mut low = 0 as Field;\n\n for i in 0..15 {\n // covers bytes 16..30 (31 is truncated and ignored)\n low = low + (bytes32[15 + 15 - i] as Field) * v;\n v = v * 256;\n // covers bytes 0..14\n high = high + (bytes32[14 - i] as Field) * v;\n }\n // covers byte 15\n low = low + (bytes32[15] as Field) * v;\n\n low + high * v\n}\n\n// TODO to radix returns u8, so we cannot use bigger radixes. It'd be ideal to use a radix of the maximum range-constrained integer noir supports\npub fn full_field_less_than(lhs: Field, rhs: Field) -> bool {\n lhs.lt(rhs)\n}\n\npub fn full_field_greater_than(lhs: Field, rhs: Field) -> bool {\n rhs.lt(lhs)\n}\n\npub fn min(f1: Field, f2: Field) -> Field {\n if f1.lt(f2) {\n f1\n } else {\n f2\n }\n}\n\nglobal C1: u32 = 28;\nglobal C3: Field = 40770029410420498293352137776570907027550720424234931066070132305055;\nglobal C5: Field = 19103219067921713944291392827692070036145651957329286315305642004821462161904;\n\npub fn pow(x: Field, y: Field) -> Field {\n let mut r = 1 as Field;\n let b: [u1; 254] = y.to_le_bits();\n\n for i in 0..254 {\n r *= r;\n r *= (b[254 - 1 - i] as Field) * x + (1 - b[254 - 1 - i] as Field);\n }\n\n r\n}\n\n/// Returns Option::some(sqrt) if there is a square root, and Option::none() if there isn't.\npub fn sqrt(x: Field) -> Option<Field> {\n // Safety: if the hint returns the square root of x, then we simply square it\n // check the result equals x. If x is not square, we return a value that\n // enables us to prove that fact (see the `else` clause below).\n let (is_sq, maybe_sqrt) = unsafe { __sqrt(x) };\n\n if is_sq {\n let sqrt = maybe_sqrt;\n validate_sqrt_hint(x, sqrt);\n Option::some(sqrt)\n } else {\n let not_sqrt_hint = maybe_sqrt;\n validate_not_sqrt_hint(x, not_sqrt_hint);\n Option::none()\n }\n}\n\n// Boolean indicating whether Field element is a square, i.e. whether there exists a y in Field s.t. x = y*y.\nunconstrained fn is_square(x: Field) -> bool {\n let v = pow(x, -1 / 2);\n v * (v - 1) == 0\n}\n\n// Tonelli-Shanks algorithm for computing the square root of a Field element.\n// Requires C1 = max{c: 2^c divides (p-1)}, where p is the order of Field\n// as well as C3 = (C2 - 1)/2, where C2 = (p-1)/(2^c1),\n// and C5 = ZETA^C2, where ZETA is a non-square element of Field.\n// These are pre-computed above as globals.\nunconstrained fn tonelli_shanks_sqrt(x: Field) -> Field {\n let mut z = pow(x, C3);\n let mut t = z * z * x;\n z *= x;\n let mut b = t;\n let mut c = C5;\n\n for i in 0..(C1 - 1) {\n for _j in 1..(C1 - i - 1) {\n b *= b;\n }\n\n z *= if b == 1 { 1 } else { c };\n\n c *= c;\n\n t *= if b == 1 { 1 } else { c };\n\n b = t;\n }\n\n z\n}\n\n// NB: this doesn't return an option, because in the case of there _not_ being a square root, we still want to return a field element that allows us to then assert in the _constrained_ sqrt function that there is no sqrt.\nunconstrained fn __sqrt(x: Field) -> (bool, Field) {\n let is_sq = is_square(x);\n if is_sq {\n let sqrt = tonelli_shanks_sqrt(x);\n (true, sqrt)\n } else {\n // Demonstrate that x is not a square (a.k.a. a \"quadratic non-residue\").\n // Facts:\n // The Legendre symbol (\"LS\") of x, is x^((p-1)/2) (mod p).\n // - If x is a square, LS(x) = 1\n // - If x is not a square, LS(x) = -1\n // - If x = 0, LS(x) = 0.\n //\n // Hence:\n // sq * sq = sq // 1 * 1 = 1\n // non-sq * non-sq = sq // -1 * -1 = 1\n // sq * non-sq = non-sq // -1 * 1 = -1\n //\n // See: https://en.wikipedia.org/wiki/Legendre_symbol\n let demo_x_not_square = x * KNOWN_NON_RESIDUE;\n let not_sqrt = tonelli_shanks_sqrt(demo_x_not_square);\n (false, not_sqrt)\n }\n}\n\nfn validate_sqrt_hint(x: Field, hint: Field) {\n assert(hint * hint == x, f\"The claimed_sqrt {hint} is not the sqrt of x {x}\");\n}\n\nfn validate_not_sqrt_hint(x: Field, hint: Field) {\n // We need this assertion, because x = 0 would pass the other assertions in this\n // function, and we don't want people to be able to prove that 0 is not square!\n assert(x != 0, \"0 has a square root; you cannot claim it is not square\");\n // Demonstrate that x is not a square (a.k.a. a \"quadratic non-residue\").\n //\n // Facts:\n // The Legendre symbol (\"LS\") of x, is x^((p-1)/2) (mod p).\n // - If x is a square, LS(x) = 1\n // - If x is not a square, LS(x) = -1\n // - If x = 0, LS(x) = 0.\n //\n // Hence:\n // 1. sq * sq = sq // 1 * 1 = 1\n // 2. non-sq * non-sq = sq // -1 * -1 = 1\n // 3. sq * non-sq = non-sq // -1 * 1 = -1\n //\n // See: https://en.wikipedia.org/wiki/Legendre_symbol\n //\n // We want to demonstrate that this below multiplication falls under bullet-point (2):\n let demo_x_not_square = x * KNOWN_NON_RESIDUE;\n // I.e. we want to demonstrate that `demo_x_not_square` has Legendre symbol 1\n // (i.e. that it is a square), so we prove that it is square below.\n // Why do we want to prove that it has LS 1?\n // Well, since it was computed with a known-non-residue, its squareness implies we're\n // in case 2 (something multiplied by a known-non-residue yielding a result which\n // has a LS of 1), which implies that x must be a non-square. The unconstrained\n // function gave us the sqrt of demo_x_not_square, so all we need to do is\n // assert its squareness:\n assert(\n hint * hint == demo_x_not_square,\n f\"The hint {hint} does not demonstrate that {x} is not a square\",\n );\n}\n\n#[test]\nunconstrained fn bytes_field_test() {\n // Tests correctness of field_from_bytes_32_trunc against existing methods\n // Bytes representing 0x543e0a6642ffeb8039296861765a53407bba62bd1c97ca43374de950bbe0a7\n let inputs = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28,\n 151, 202, 67, 55, 77, 233, 80, 187, 224, 167,\n ];\n let field = field_from_bytes(inputs, true);\n let return_bytes: [u8; 31] = field.to_be_bytes();\n assert_eq(inputs, return_bytes);\n // 32 bytes - we remove the final byte, and check it matches the field\n let inputs2 = [\n 84, 62, 10, 102, 66, 255, 235, 128, 57, 41, 104, 97, 118, 90, 83, 64, 123, 186, 98, 189, 28,\n 151, 202, 67, 55, 77, 233, 80, 187, 224, 167, 158,\n ];\n let field2 = field_from_bytes_32_trunc(inputs2);\n let return_bytes2: [u8; 31] = field.to_be_bytes();\n\n assert_eq(return_bytes2, return_bytes);\n assert_eq(field2, field);\n}\n\n#[test]\nunconstrained fn max_field_test() {\n // Tests the hardcoded value in constants.nr vs underlying modulus\n // NB: We can't use 0-1 in constants.nr as it will be transpiled incorrectly to ts and sol constants files\n let max_value = crate::constants::MAX_FIELD_VALUE;\n assert_eq(max_value, 0 - 1);\n // modulus == 0 is tested elsewhere, so below is more of a sanity check\n let max_bytes: [u8; 32] = max_value.to_be_bytes();\n let mod_bytes = std::field::modulus_be_bytes();\n for i in 0..31 {\n assert_eq(max_bytes[i], mod_bytes[i]);\n }\n assert_eq(max_bytes[31], mod_bytes[31] - 1);\n}\n\n#[test]\nunconstrained fn sqrt_valid_test() {\n let x = 16; // examples: 16, 9, 25, 81\n let result = sqrt(x);\n assert(result.is_some());\n assert_eq(result.unwrap() * result.unwrap(), x);\n}\n\n#[test]\nunconstrained fn sqrt_invalid_test() {\n let x = KNOWN_NON_RESIDUE; // has no square root in the field\n let result = sqrt(x);\n assert(result.is_none());\n}\n"
4609
4609
  },
4610
- "395": {
4610
+ "397": {
4611
4611
  "path": "/home/aztec-dev/aztec-packages/noir-projects/noir-protocol-circuits/crates/types/src/utils/reader.nr",
4612
4612
  "source": "pub struct Reader<let N: u32> {\n data: [Field; N],\n offset: u32,\n}\n\nimpl<let N: u32> Reader<N> {\n pub fn new(data: [Field; N]) -> Self {\n Self { data, offset: 0 }\n }\n\n pub fn read(&mut self) -> Field {\n let result = self.data[self.offset];\n self.offset += 1;\n result\n }\n\n pub fn read_u32(&mut self) -> u32 {\n self.read() as u32\n }\n\n pub fn read_u64(&mut self) -> u64 {\n self.read() as u64\n }\n\n pub fn read_bool(&mut self) -> bool {\n self.read() != 0\n }\n\n pub fn read_array<let K: u32>(&mut self) -> [Field; K] {\n let mut result = [0; K];\n for i in 0..K {\n result[i] = self.data[self.offset + i];\n }\n self.offset += K;\n result\n }\n\n pub fn read_struct<T, let K: u32>(&mut self, deserialise: fn([Field; K]) -> T) -> T {\n let result = deserialise(self.read_array());\n result\n }\n\n pub fn read_struct_array<T, let K: u32, let C: u32>(\n &mut self,\n deserialise: fn([Field; K]) -> T,\n mut result: [T; C],\n ) -> [T; C] {\n for i in 0..C {\n result[i] = self.read_struct(deserialise);\n }\n result\n }\n\n pub fn finish(self) {\n assert_eq(self.offset, self.data.len(), \"Reader did not read all data\");\n }\n}\n"
4613
4613
  },
4614
- "407": {
4614
+ "409": {
4615
4615
  "path": "/home/aztec-dev/nargo/github.com/noir-lang/schnorr/v0.1.3/src/lib.nr",
4616
4616
  "source": "use std::embedded_curve_ops::{EmbeddedCurvePoint, EmbeddedCurveScalar, multi_scalar_mul};\nuse std::hash::{blake2s, pedersen_hash};\n\n// the multiples of BN_P that are still less than 2^254 split into (lo, hi)\nglobal BN_P_m: [(Field, Field); 6] = [\n (0, 0),\n (201385395114098847380338600778089168199, 64323764613183177041862057485226039389),\n (62488423307259231297302594124410124942, 128647529226366354083724114970452078779),\n (263873818421358078677641194902499293141, 192971293839549531125586172455678118168),\n (124976846614518462594605188248820249884, 257295058452732708167448229940904157558),\n (326362241728617309974943789026909418083, 321618823065915885209310287426130196947),\n];\n\nglobal TWO_POW_128: Field = 0x100000000000000000000000000000000;\n\npub fn verify_signature<let N: u32>(\n public_key: EmbeddedCurvePoint,\n signature: [u8; 64],\n message: [u8; N],\n) -> bool {\n //scalar lo/hi from bytes\n let sig_s = scalar_from_bytes(signature, 0);\n let sig_e = scalar_from_bytes(signature, 32);\n // pub_key is on Grumpkin curve\n let mut is_ok = (public_key.y * public_key.y == public_key.x * public_key.x * public_key.x - 17)\n & (!public_key.is_infinite);\n\n if ((sig_s.lo != 0) | (sig_s.hi != 0)) & ((sig_e.lo != 0) | (sig_e.hi != 0)) {\n let (r_is_infinite, result) =\n calculate_signature_challenge(public_key, sig_s, sig_e, message);\n\n is_ok &= !r_is_infinite;\n for i in 0..32 {\n is_ok &= result[i] == signature[32 + i];\n }\n } else {\n is_ok = false;\n }\n is_ok\n}\n\npub fn assert_valid_signature<let N: u32>(\n public_key: EmbeddedCurvePoint,\n signature: [u8; 64],\n message: [u8; N],\n) {\n //scalar lo/hi from bytes\n let sig_s = scalar_from_bytes(signature, 0);\n let sig_e = scalar_from_bytes(signature, 32);\n\n // assert pub_key is on Grumpkin curve\n assert(public_key.y * public_key.y == public_key.x * public_key.x * public_key.x - 17);\n assert(public_key.is_infinite == false);\n // assert signature is not null\n assert((sig_s.lo != 0) | (sig_s.hi != 0));\n assert((sig_e.lo != 0) | (sig_e.hi != 0));\n\n let (r_is_infinite, result) = calculate_signature_challenge(public_key, sig_s, sig_e, message);\n\n assert(!r_is_infinite);\n for i in 0..32 {\n assert(result[i] == signature[32 + i]);\n }\n}\n\nfn calculate_signature_challenge<let N: u32>(\n public_key: EmbeddedCurvePoint,\n sig_s: EmbeddedCurveScalar,\n sig_e: EmbeddedCurveScalar,\n message: [u8; N],\n) -> (bool, [u8; 32]) {\n let g1 = EmbeddedCurvePoint {\n x: 1,\n y: 17631683881184975370165255887551781615748388533673675138860,\n is_infinite: false,\n };\n let reduced_sig_e = normalize_signature(sig_e);\n let r = multi_scalar_mul([g1, public_key], [sig_s, reduced_sig_e]);\n // compare the _hashes_ rather than field elements modulo r\n let pedersen_hash = pedersen_hash([r.x, public_key.x, public_key.y]);\n let pde: [u8; 32] = pedersen_hash.to_be_bytes();\n\n let mut hash_input = [0; N + 32];\n for i in 0..32 {\n hash_input[i] = pde[i];\n }\n for i in 0..N {\n hash_input[32 + i] = message[i];\n }\n\n let result = blake2s(hash_input);\n (r.is_infinite, result)\n}\n\nunconstrained fn __gt(a: Field, b: Field) -> bool {\n b.lt(a)\n}\n\n// gets the quotient of lo/hi when divided by BN254_Fq modulus\nunconstrained fn __get_quotient(hi: Field, lo: Field) -> u32 {\n let mut q: u32 = 0;\n let mut r_hi = hi;\n let mut r_lo = lo;\n let MODULUS = BN_P_m[1];\n\n for _ in 1..6 {\n // check if rhi, rlo is larger than BN_P\n let borrow = r_lo.lt(MODULUS.0);\n\n if borrow {\n r_lo = r_lo + TWO_POW_128;\n // rlo is always larger than BN_P lo now\n r_hi = r_hi - 1;\n }\n\n let MODULUS_hi = MODULUS.1;\n\n let gt_flag = !r_hi.lt(MODULUS_hi);\n\n if gt_flag {\n r_hi = r_hi - MODULUS.1;\n r_lo = r_lo - MODULUS.0;\n if TWO_POW_128.lt(r_lo) | TWO_POW_128.lt(r_hi) {\n break;\n }\n q += 1;\n }\n }\n q\n}\n\n// this method reduces the signature to the range [0, BN254_Fq_MODULUS)\nfn normalize_signature(sig_e: EmbeddedCurveScalar) -> EmbeddedCurveScalar {\n let mut hi = sig_e.hi;\n let mut lo = sig_e.lo;\n // get the quotient\n let q = unsafe { __get_quotient(hi, lo) };\n let MODULUSmq = (BN_P_m[q].0, BN_P_m[q].1);\n let MODULUS = BN_P_m[1];\n // remove MODULUS * q from lo/hi\n let borrow = unsafe { __gt(MODULUSmq.0, lo) };\n // rlo, rhi is the signature without the multiple of MODULUS\n let rlo = lo - MODULUSmq.0 + borrow as Field * TWO_POW_128;\n let rhi = hi - borrow as Field - MODULUSmq.1;\n // now we validate that rlo and rhi are positive\n rlo.assert_max_bit_size::<128>();\n rhi.assert_max_bit_size::<128>();\n // validate that rlo, rhi is smaller than MODULUS\n // if the lo is larger than the modulus lo we have to get a borrow\n let borrow = unsafe { __gt(rlo, MODULUS.0) };\n let rplo = MODULUS.0 - rlo + borrow as Field * TWO_POW_128;\n let rphi = MODULUS.1 - rhi - borrow as Field;\n // check that rplo and rphi are positive\n rplo.assert_max_bit_size::<128>();\n rphi.assert_max_bit_size::<128>();\n EmbeddedCurveScalar::new(rlo, rhi)\n}\n\n//Bytes to scalar: take the first (after the specified offset) 16 bytes of the input as the lo value, and the next 16 bytes as the hi value\nfn scalar_from_bytes(bytes: [u8; 64], offset: u32) -> EmbeddedCurveScalar {\n let mut v: Field = 1;\n let mut lo: Field = 0;\n let mut hi: Field = 0;\n for i in 0..16 {\n lo = lo + (bytes[offset + 31 - i] as Field) * v;\n hi = hi + (bytes[offset + 15 - i] as Field) * v;\n v = v * 256;\n }\n let sig_s = EmbeddedCurveScalar::new(lo, hi);\n sig_s\n}\n\nmod test {\n use super::normalize_signature;\n use super::verify_signature;\n use std::embedded_curve_ops::{EmbeddedCurvePoint, EmbeddedCurveScalar};\n\n #[test]\n fn test_zero_signature() {\n let public_key: EmbeddedCurvePoint = EmbeddedCurvePoint {\n x: 1,\n y: 17631683881184975370165255887551781615748388533673675138860,\n is_infinite: false,\n };\n let signature: [u8; 64] = [0; 64];\n let message: [u8; _] = [2; 64]; // every message\n let verified = verify_signature(public_key, signature, message);\n assert(!verified);\n }\n\n #[test]\n fn smoke_test() {\n let message: [u8; 10] = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];\n let pub_key_x: Field = 0x04b260954662e97f00cab9adb773a259097f7a274b83b113532bce27fa3fb96a;\n let pub_key_y: Field = 0x2fd51571db6c08666b0edfbfbc57d432068bccd0110a39b166ab243da0037197;\n let signature: [u8; 64] = [\n 1, 13, 119, 112, 212, 39, 233, 41, 84, 235, 255, 93, 245, 172, 186, 83, 157, 253, 76,\n 77, 33, 128, 178, 15, 214, 67, 105, 107, 177, 234, 77, 48, 27, 237, 155, 84, 39, 84,\n 247, 27, 22, 8, 176, 230, 24, 115, 145, 220, 254, 122, 135, 179, 171, 4, 214, 202, 64,\n 199, 19, 84, 239, 138, 124, 12,\n ];\n\n let pub_key = EmbeddedCurvePoint { x: pub_key_x, y: pub_key_y, is_infinite: false };\n let valid_signature = verify_signature(pub_key, signature, message);\n assert(valid_signature);\n super::assert_valid_signature(pub_key, signature, message);\n }\n\n #[test]\n fn test_normalize_signature() {\n let sig_e = EmbeddedCurveScalar::new(\n 201385395114098847380338600778112493540,\n 64323764613183177041862057485226039389,\n );\n let normalized = normalize_signature(sig_e);\n let expected = EmbeddedCurveScalar::new(23325341, 0);\n assert(normalized == expected);\n }\n\n #[test]\n fn test_normalize_signature_2() {\n let sig_e = EmbeddedCurveScalar::new(\n 263873818421358078677641194902522618482,\n 192971293839549531125586172455678118168,\n );\n let normalized = normalize_signature(sig_e);\n let expected = EmbeddedCurveScalar::new(23325341, 0);\n assert(normalized == expected);\n }\n\n}\n\nmod bench {\n use super::{assert_valid_signature, verify_signature};\n use std::embedded_curve_ops::EmbeddedCurvePoint;\n\n #[export]\n pub fn bench_verify_signature(\n public_key: EmbeddedCurvePoint,\n signature: [u8; 64],\n message: [u8; 32],\n ) -> bool {\n verify_signature(public_key, signature, message)\n }\n\n #[export]\n pub fn bench_assert_valid_signature(\n public_key: EmbeddedCurvePoint,\n signature: [u8; 64],\n message: [u8; 32],\n ) {\n assert_valid_signature(public_key, signature, message)\n }\n}\n"
4617
4617
  },