@aztec/accounts 3.0.0-nightly.20251219 → 3.0.0-nightly.20251220
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///v3en0ym6SOVOO6SSVBKSJEklSRKh+1XpXlJIJUkSlSSJSpKQJFSShIRKkiQkISSUSwjpPy/20T7bZM97nTOv/X39f595PFZzjJm93u/nusx7ZtZ6rWjk7y0W37dp0+76/p06tOnZt03Xnv079e3Zrnu/Nm069ezfd1DvXt6RH8pGIkuP/fvcqJcy4vt88d9IPJa9T/y7uM95Jbx0TtKxQ7w0NOnYoT7HjvL5vaN9jh3jc6y0z7GYTx5lfI4d63PsOJ9jx/vkcYLPsfI+rCr4HDvR59hJPr93ss95lX2OVfE5dorP753qc151n2On+Rw7w+f3zvQ5r6bPsbN8jp3t83vn+JxXx+fYuT7HzvNSwaRj9eL7/JEAWzS+j8X3VTpe1HdL1WkVFl5c77lhw1q0Kl/tqwaDFvUeV3fLrrt3ev9/Vca+c1NsJ+Umn9Wp8zk28bcLR/Y5HI3biX3ZyL6KG43/bvZ5b3l/r/HS215am5HzxzOS7E2xRcsZzn0rIziHd4LzzrFZ7S9vOHeNwf51JPsrGM5922D/uwb7/erhO/F6uC6+fze+X5tQD9d7f7/npQ1eej+X9fBEw7nrDRw2ksqxouHc9wz2f0Cy/yTDuRsM9n+Yy3q4MV7vPojvP4zv30+ohx95f2/y0sde2pzLeljJcO5HBg6fkMrxZMO5mwz2byHZX9lw7scG+z/NZT38JF7vtsT3n8b3mxPq4Wfe3597aauXvshlPaxiOPczA4cvSeVY1XDu5wb7vyLZf4rh3K0G+7flsh5+Ga93X8X32+L7LxLq4dfe39u99I2Xvs1lPaxmOPdrA4fvSOV4quHc7Qb7d5Dsr2449xuD/TtzWQ+/i9e7HfH9zvj+24R6+L339w9e+tFLP+WyHp5mOPd7A4ddpHI83XDuDwb7fybZf4bh3B8N9v+Sy3q4K17vfo7vf4nvf0qoh796f+/20m9e+j2X9bCG4dxfDRz+IJXjmYZzdxvs30Oyv6bh3N8M9v+Zy3r4R7ze7Ynv/4zvf0+oh3sz/r4o6qV8SW+5rBzOMpy718AhIz+nHGsZzo3kD25/fpL9ZxvOjRrsz8yfu3qI8sM+f3yfGd+jvmWfV8D7I8tLBb1UKJf1sLbh3AIGDgeQyvEcw7lZBvsPJNlfx3BuQYP9hXNZDw+I17sD4/vC8X2hhHpYxPujqJeKeemgXNbDcw3nFjFwKE4qx7qGc4sa7D+YZP95hnOLGewvkct6WDxe7w6O70vE9wcl1MOS3h+lvHSIlw7NZT2sZzi3pIHDYbnkcFjc71Lx/SHx/aEJHA73/jjCS0d66agkDvni+1gkmAklIsF9Ozqob9GmQ/+6x8V9wnXnRHJn5/EGO48JXgbRRDuzr8sf/++o3wVGu6PBz93PLyRlmMr50sGdPzY3+cRS5xNL/O3kil46XrGTP6DGEip6Ge+PY710nJeOz2WDt3xALWNo8GVJHbflA+qxBvtPINlv+YB6nMH+crnscMvG6+EJ8X25+P74hHpY3vujgpdO9FLFXNZDywfU8gYOJ5HK0fIBtYLB/kok+y0fUE802H9yLuvhSfF6Vym+Pzm+r5hQDyt7f1TxUlUvnZLLemj5gFrZwKEaqRwtH1CrGOw/lWS/5QNqVYP91XNZD6vF692p8X31+P6UhHp4mvfH6V46w0s1clkPLR9QTzNwOJNUjpYPqKcb7K9Jst/yAfUMg/1n5bIenhmvdzXj+7Pi+xoJ9bCW98fZXqqNB4xc1kPLB9RaBg51SOVo+YB6tsH+c0n2Wz6g1jbYXzeX9bBOvN6dG9/Xje/PSaiH53l/1PPS+V6qn8t6aPmAep6BQwNSOVo+oNYz2N+QZL/lA+r5BvsvyGU9bBCvdw3j+wvi+/oJ9bCR98eFXmrspYtyWQ8tH1AbGTg0IZWj5QPqhQb7LybZb/mA2thgf9Nc1sMm8Xp3cXzfNL6/KKEeXuL90cxLl3qpeS7roeUD6iUGDpeRytHyAbWZwf7LSfZbPqBearC/RS7r4WXxend5fN8ivm+eUA+v8P640ktXeallLuuh5QPqFQYOrUjleI7h3CsN9rcm2V/HcO5VBvvb5LIetorXu9bxfZv4vmVCPWzr/dHOS+291CGX9dDyAbWtgUNHUjlaPqC2M9jfKZfl2DFebp3i+/bxfYeEcuzs/dHFS1d7qWv8eL5I3nwo6mywv2jC393ixl0T33eP73vE9z3j+17xfe/4vk983ze+7xff94/vr81+zonnM8D77+u8NNBLg7x0vZdu8NKNXhrspZu8NMRLQ700zEs3e2m4l27x0ggv3eqlkV66zUujvHS7l0Z76Q4vjfHSnV66y0tjvTTOS+O9dLeXJnjpHi9N9NK9Xprkpfu8NNlL93tpipce8NKDXprqpWlemu6lh7w0w0sPe2mmlx7x0iwvPeql2V56zEuPe+kJL83x0pNemuulp7w0z0tPe2m+l57x0rNxJs9hDyjZXwy759/3pTD7WC+fY319jl3rcwyQk6dbXudzbKDPsUE+x673OXaDz7EbfY4N9jl2k8+xIT7HhvocG+Zz7GafY8N9jt3ic2yEz7FbfY6N9Dl2m8+xUT7Hbvc5Ntrn2B0+x8b4HLvT59hdPsfG+hwb53NsvM+xu32OTfA5do/PsYk+x+71OTbJ59h9Pscm+xy73+fYFJ9jD/gce9Dn2FSfY9N8jk33OfaQz7EZPsce9jk20+fYIz7HZvkce9Tn2GyfY4/5HHvc59gTPsfm+Bx70ufYXJ9jT/kcm+dz7GmfY/N9jj3jc+zZ+DH0qYUj+wKJxC0a38cigTbTTdRvi+XitFgkyBb9x6dowjULPLsXemmRl5730mIvveClJV560UtLvfSSl5Z56WUvveKlV7203EuveWmFl1730hteetNLK720ykurvfSWl9Z46W0vrfXSO15a56V3vbTeS+8l39QW+BTWQp9ji3yOPe9zbLHPsRd8ji3xOfaiz7GlPsde8jm2zOfYyz7HXvE59qrPseU+x17zObbC59jrPsfe8Dn2ps+xlT7HVvkcW+1z7C2fY2t8jr3tc2ytz7F3fI6t8zn2rs+x9T7H3osfS9zKxPexSKAtR6NP9ZSwIOC5O/bujS4MfG4kuijouZ69zwc7d7xnb3RxoHN/gm/RF4Kc+8lfHKJLApx77t/Moi+mPndsnG90acpze2WXRfSlVOcu/KfcostSnDtwXxlHX/7vc+sn1IfoK/957peJdSf66n+de0qOehZd/h/nlstZJ6Ov7f/clkn1N7piv+denlzXo6/v79yh/2oX0Tf2c+7Qf7eh6Jv+5z7r096iK33PPc+vbUZX+Z3bxLcdR1f7nLvAv81H3/r3ueX30z9E1/zr3Kn760uibyefW2W//U50bdK5n+y/j4q+k/PcPv/Rn0XX5Ti38X/1fdF3E8/t8J/9ZHR9wrmV/7tPjb5nCLoQaxSJ7AvsEjdrsPde8L58bWJ+G/LnIkNcnDx2OVXmG4IDir5vuJm5+oA8okYf3jcWMl5R5fMzICnfIPYGPPdtv4OxSKBscti6MV5BPkiOjDfGwSUe+8AngrG+EzXU5OhGQwX5wAjPWjioFBuNlekvsZ809Rjrg3N+IDG/D117DGT4ob3HeOBDQ4/xUcg9Bnz4yN5jPPBRmnqM9cHzneJ3MBYJlE0OWzfFK8jHyT3GJp8e4+M86DEMNTm6yVBBPnaEZ6ngyMdi02ZDY/jnH4Mt78cruHVKkuVW/YmhMfj5kOp0MPrEoSf+JE098bvB6+/8xPy2uPbEyHCLvSeev8VQ+T4NuSeGD5/ae+L5n+ay8gVpQJ+E3IA+M/qQvVk7JksZfm6oG3l5h3s3eL5P+x2MRQJlk8PWrfGG90XyHW6rzx3uizy4wxl6iOhWQ6F94QjPWpEsNn2ZyztcqmvQeD53uDt8FfJdC35/RbAre7OW4VeGMtwWchnur5MN0jkHPfdrY4eWV9HAuuBt/a7E/La7RgPIcLs9GrhruwHQNyFHA/DhG3s0cNc3IUcDaAhf5w+3sX1rbGzZm9UmSxl+l6ZoYF3wfO/0OxiLBMomh6074g1vZ3I0sMMnGtiZB9GAoYeI7jAU2k5HeNaKZLHp+5DvJGg83zncdX8IORqA3z8Q7MrerGX4g6EMfwy5DPfXyaa6ztLJ/pSmdwPvBG/rscT8drlGA8hwlz0aiO0yFPLPIUcD8OFnezQQ+znkaAAN4af84Ta2X0jRgKUMf01TNPBO8HxL+x2MRQJlk8PW3fGG91tyNLDbJxr4LQ+iAUMPEd1tKLTfHOFZK5LFpt9DvpOg8fzqcNf9I+RoAH7/QbAre7OW4R+GMtwTchnur5NNdZ2lk/0zTdHA2uBt/e3E/Pa6RgPIcK89Gnh7r6WQM8ONBuAD8jBGA28n2hXMkeC/n90Q/swfbmOLZtoaW/ZmtclShvkMNuVlNLA2eJ1c43cwFgmUTQ5bMzL/3ufPjOS882dk/jsawEm5jQYMPUQ0w1Bo+TPd4FkrksWmTGPltlYYNJ58mfaGXSCXHUeq0+F3AYJd2Zu1DAsYyjAr5DLcXyeb6jpLJ1vQwDUvo4G3g7f1don5FcrMRYa42BgNtCtkKOQDQo4G4MMB9mig3QEhRwNoCAUzw21sB5KiAUsZFk5TNPB28Gigrd/BWCRQNjlsLRJveEWTo4EiPtFA0TyIBgw9RLSIodCKZrrBs1Yki03FQr6ToPEUdrjrHhRyNAC/DyLYlb1Zy/AgQxkWD7kM99fJprrO0skenKZoYE3wtv5+Yn4lXKMBZFjCHg28X8JQyCVDjgbgQ0l7NPB+yZCjATSEgzPDbWylSNGApQwPSVM0sCZ4NLDB72AsEiibHLYeGm94hyVHA4f6RAOH5UE0YOghoocaCu2wTDd41opksenwkO8kaDyHONx1jwg5GoDfRxDsyt6sZXiEoQyPDLkM99fJprrO0skelaZo4K3gbb1hYn5Hu0YDyPBoezTQ8GhDIR8TcjQAH46xRwMNjwk5GkBDOCoz3MZWmhQNWMowlqZo4K3g0UADv4OxSKBscthaJt7wjk2OBsr4RAPH5kE0YOghomUMhXZsphs8a0Wy2HRcyHeSvxqPw133+JCjAfh9PMGu7M1ahscbyrBsyGW4v0421XWWTvaENEUDq4O39XmJ+ZVzjQaQYTl7NDCvnKGQy4ccDcCH8vZoYF75kKMBNIQTMsNtbBVI0YClDE9MUzSwOng08JTfwVgkUDY5bK0Yb3gnJUcDFX2igZPyIBow9BDRioZCOynTDZ61IllsqhTynQSN50SHu+7JIUcD8Ptkgl3Zm7UMTzaUYeWQy3B/nWyq6yydbJU0RQOrgrf1FxLzq+oaDSDDqvZo4IWqhkI+JeRoAD6cYo8GXjgl5GgADaFKZriNrRopGrCU4alpigZWBY8GFvsdjEUCZZPD1urxhndacjRQ3ScaOC0PogFDDxGtbii00zLd4FkrksWm00O+k6DxnOpw1z0j5GgAfp9BsCt7s5bhGYYyrBFyGe6vk011naWTPTNN0cDK4G29UWJ+NV2jAWRY0x4NNKppKOSzQo4G4MNZ9mig0VkhRwNoCGdmhtvYapGiAUsZnp2maGBl8GjgAr+DsUigbHLYWjve8M5JjgZq+0QD5+RBNGDoIaK1DYV2TqYbPGtFsthUJ+Q7CRrP2Q533XNDjgbg97kEu7I3axmeayjDuiGX4f462VTXWTrZ89IUDbwZvK0PTcyvnms0gAzr2aOBofUMhXx+yNEAfDjfHg0MPT/kaAAN4bzMcBtbfVI0YCnDBmmKBt4MHg0M8TsYiwTKJoetDeMN74LkaKChTzRwQR5EA4YeItrQUGgXZLrBs1Yki02NQr6ToPE0cLjrXhhyNAC/LyTYlb1Zy/BCQxk2DrkM99fJprrO0slelKZo4A3HaKCJazSADJs4RANNDIV8ccjRAHy42CEauDjkaAAN4aLMcBtbU1I0YCnDS9IUDbyRhmigWbzhXZocDTTziQYuzYNowNBDRJsZCu1SUjRgsal5yHcSNJ5LHO66l4UcDcDvywh2ZW/WMrzMUIaXh1yG++tkU11n6WRbpCkaeD14W5+dmN8VrtEAMrzCHg3MvsJQyFeGHA3Ahyvt0cDsK0OOBtAQWmSG29iuIkUDljJsmaZo4PXg0cCjfgdjkUDZ5LC1VbzhtU6OBlr5RAOt8yAaMPQQ0VaGQmud6QbPWpEsNrUJ+U6CxtPS4a7bNuRoAH63JdiVvVnLsK2hDNuFXIb762RTXWfpZNunKRpYEbytP5yYXwfXaAAZdrBHAw93MBRyx5CjAfjQ0R4NPNwx5GgADaF9ZriNrRMpGrCUYec0RQMrgkcDM/wOxiKBsslha5d4w7s6ORro4hMNXJ0H0YChh4h2MRTa1Zlu8KwVyWJT15DvJGg8nR3uut1CjgbgdzeCXdmbtQy7GcrwmpDLcH+dbKrrLJ1s9zRFA68Fb+sbE/Pr4RoNIMMe9mhgYw9DIfcMORqADz3t0cDGniFHA2gI3TPDbWy9SNGApQx7pykaeC14NPC+38FYJFA2OWztE294fZOjgT4+0UDfPIgGDD1EtI+h0PpmusGzViSLTf1CvpOg8fR2uOv2DzkagN/9CXZlb9Yy7G8ow2tDLsP9dbKprrN0sgPSFA0sD97W30rM7zrXaAAZXmePBt66zlDIA0OOBuDDQHs08NbAkKMBNIQBmeE2tkGkaMBShtenKRpYHjwaWO13MBYJlE0OW2+IN7wbk6OBG3yigRvzIBow9BDRGwyFdmOmGzxrRbLYNDjkOwkaz/UOd92bQo4G4PdNBLuyN2sZ3mQowyEhl+H+OtlU11k62aFpigZeDd7WD0/Mb5hrNIAMh9mjgcOHGQr55pCjAfhwsz0aOPzmkKMBNIShmeE2tuGkaMBShrekKRp4NXg0cJjfwVgkUDY5bB0Rb3i3JkcDI3yigVvzIBow9BDREYZCuzXTDZ61IllsGhnynQSN5xaHu+5tIUcD8Ps2gl3Zm7UMbzOU4aiQy3B/nWyq6yyd7O1pigZeCd7WFyXmN9o1GkCGo+3RwKLRhkK+I+RoAD7cYY8GFt0RcjSAhnB7ZriNbQwpGrCU4Z1pigZeCR4NLPQ7GIsEyiaHrXfFG97Y5GjgLp9oYGweRAOGHiJ6l6HQxma6wbNWJItN40K+k6Dx3Olw1x0fcjQAv8cT7MrerGU43lCGd4dchvvrZFNdZ+lkJ6QpGng5eFu/LTG/e1yjAWR4jz0auO0eQyFPDDkagA8T7dHAbRNDjgbQECZkhtvY7iVFA5YynJSmaODl4NHASL+DsUigbHLYel+84U1Ojgbu84kGJudBNGDoIaL3GQptcqYbPGtFsth0f8h3EjSeSQ533SkhRwPwewrBruzNWoZTDGX4QMhluL9ONtV1lk72wTRFA8uCt/UGiflNdY0GkOFUezTQYKqhkKeFHA3Ah2n2aKDBtJCjATSEBzPDbWzTSdGApQwfSlM0sCx4NFDf72AsEiibHLbOiDe8h5OjgRk+0cDDeRANGHqI6AxDoT2c6QbPWpEsNs0M+U6CxvOQw133kZCjAfj9CMGu7M1aho8YynBWyGW4v0421XWWTvbRNEUDLwVv6+MS85vtGg0gw9n2aGDcbEMhPxZyNAAfHrNHA+MeCzkaQEN4NDPcxvY4KRqwlOETaYoGXgoeDYz1OxiLBMomh61z4g3vyeRoYI5PNPBkHkQDhh4iOsdQaE9musGzViSLTXNDvpOg8TzhcNd9KuRoAH4/RbAre7OW4VOGMpwXchnur5NNdZ2lk306TdHA0uBtvXdifvNdowFkON8eDfSebyjkZ0KOBuDDM/ZooPczIUcDaAhPZ4bb2J4lRQOWMnwuTdHA0uDRQC+/g7FIoGxy2Log3vAWJkcDC3yigYV5EA0YeojoAkOhLcx0g2etSBabFoV8J0Hjec7hrvt8yNEA/H6eYFf2Zi3D5w1luDjkMtxfJ5vqOksn+0KaooEXg7f1FxPzW+IaDSDDJfZo4MUlhkJ+MeRoAD68aI8GXnwx5GgADeGFzHAb21JSNGApw5fSFA28GDwaWOJ3MBYJlE0OW5fFG97LydHAMp9o4OU8iAYMPUR0maHQXs50g2etSBabXgn5ToLG85LDXffVkKMB+P0qwa7szVqGrxrKcHnIZbi/TjbVdZZO9rU0RQNLgrf1WGJ+K1yjAWS4wh4NxFYYCvn1kKMB+PC6PRqIvR5yNICG8FpmuI3tDVI0YCnDN9MUDSwJHg2U9jsYiwTKJoetK+MNb1VyNLDSJxpYlQfRgKGHiK40FNqqTDd41opksWl1yHcSNJ43He66b4UcDcDvtwh2ZW/WMnzLUIZrQi7D/XWyqa6zdLJvpykaeCF4Wy+cmN9a12gAGa61RwOF1xoK+Z2QowH48I49Gij8TsjRABrC25nhNrZ1pGjAUobvpikaeCF4NHCg38FYJFA2OWxdH2947yVHA+t9ooH38iAaMPQQ0fWGQnsv0w2etSJZbNoQ8p0Ejeddh7vu+yFHA/D7fYJd2Zu1DN83lOHGkMtwf51squssnewHaYoGFgdv6z0T8/vQNRpAhh/ao4GeHxoK+aOQowH48JE9Guj5UcjRABrCB5nhNrZNpGjAUoYfpykaWBw8GujhdzAWCZRNDls3xxveJ8nRwGafaOCTPIgGDD1EdLOh0D7JdINnrUgWm7aEfCdB4/nY4a77acjRAPz+lGBX9mYtw08NZfhZyGW4v0421XWWTvbzNEUDzwdv68UT89vqGg0gw632aKD4VkMhfxFyNAAfvrBHA8W/CDkaQEP4PDPcxvYlKRqwlOFXaYoGng8eDRzkdzAWCZRNDlu3xRve18nRwDafaODrPIgGDD1EdJuh0L7OdINnrUgWm7aHfCdB4/nK4a77TcjRAPz+hmBX9mYtw28MZfhtyGW4v0421XWWTva7NEUDi4J3aDny2+EaDSDDHZn263aGfIeHXTsz9x2IRYJv1kaECvtdZriN4nvSXdtSLj/ksqEG8fkHhzLMywa10LFB/ejaoJDhjw4N6qeQGxTs+imPGlSq01HwP2W6VZhYsDzytJIsyB/cxsT8drlWEmS4y6HH2WVosT+HXKHgw88OhfxzyM9gqEQ/O4QH3xt4/RJyOAi2vzg21uzNWrd+Mfj/a8gh3v7uyKmus9yRd4dchmC02+FGYCkHF7t6YJ3K/PZ29ZuRl7X+wSZDHtGeWKsy/74DsWDXFU/8j4Iprk2+udz6X9FE0skj/zPyyHnybf8dpeQ4eVSKiCbx5NtTRT8JJ48OHilF7zHcMBuVceu/DojvY/951j4H7kht/z8njwnga/bJdwbhEj/5rkAM/z55bDDef508LmDZ4OTxQcvRO/nuwGUejUwwlPmFjmWe/GosVT6/G/oLQz2MWuzPy0DU4E+O/P5wDUSR4R8ON6k9Id+kYNeeXAZA1s59gKFzv87QuQ80dO6DDJ379YbO/QZD5z7C0NAvIXXuNxo698GGzv0mQ+c+xNC5DzV07sMMnfvNhs59uKFzv8VQ5s1Infufhs7dUA+jFvvzsnP/07Fz3+vauSPDvQ6de6RAuJ077EIeEdt1vnmlsm9PLvLK3vKnuDa5cjxiuJHMMtxIHjU00kvLhONrslGzDTesxww3rMcNvjYPz9ccRj1huAnNMdyEnjT4elmovu4zaq7hZveU4WY3z+Dr5WH7GjfqacNNdb7hpvqMwdcWjr5mxfexYKdHn7W86i4Q/HcN/U3U0F6jhvoeNdSXqIV3XgYBBqY58stXIBcZ4mLrdRkhBwGwK4N8Y55ouDHfa7gxTzI0qqtIN+b7DDfmyYYb8/0GX1uSbsxTDDfmBww35gcNvrYK1dd9Rk013JinGW7M0w2+tg7b17hRDxluzDMMN+aHDb62Id2YZxpsym+4MRv6m6ihvUYN9T1qqC9RC++8vDHnd7wxZ7remJFhpsONuUDIN2bYVYD0dJ7hmBcKHq+T/MYQH5Tit9IRFKQ6mXGzTnUy4yaa6mTGzS3VyYybTqqTZwY/N8dmrfuMN1WpTma8QUp1MuPNTqqTGW9cUp3MeBOS6uRnDXU/sW5kFYgfyJ57keVzR7feoAoaooLc5FPoP/K5d1i3cVf3eXPMWbE7Dnn/xj31c5PPAf+RT/K1ucnnwP/Ip3K+9ce+/dk9Rwysc1ilp3b/dmdu8in8H/m0fX3K1pc7nNOs97TRPTLyPbU4N/kU+Y98Xrul9jM1mreZ9Uy7h88bNeCX9bnJp+h/5DPupO0tZkz4ZHD5nWuPu+WWQoflJp9i/5FP68zH6k1fceKpO2+uclW7H3cdlZt8DvqPfJaNq7HylteGPrKlziEfFMhsNyA3+RT/j3x2jSy54YAzfnr5pIde6Htm7x865Cafg/8jn+933XZ2p19jb983ruXYkbcuWod+6EgvFY7/f/QlSGjraIdoI6i/qFsod5QJeMGXgwv8+/eNgyHzZRkeFEoY+rl8cb+St1jEtiWzT3W6xUbXPEoa8sBDSF5NZAzi296/t11+/y/235f+c59MtLVUvI4dknzjxIFzkn7BOmmxROrKNzZe+aKlDBX1EEdQ1oZeyvHGbx2xXMLg+6GG1z7paqSHEhrpYcZGipQXjbSkY53431PZvj//91T2/9ZT2eHJN5fDC/y7wheK72MRuzGpOs3/aLTJZvxlW9DfPeJ/H8f/tVnL0fLN4zBD2VjK8cj/fUv5a8vLG+URjjfKSIp8kt+EJDbgo5I7mqN8OhrrENQjDJ3HUYZKd3QBm5PZPuG6obn06UiDnRafjjG8Wkr06Zg88Km0oRGHNQ8kcbPaHzPYH9ZQZ5QFpkwkvnmIBb80+dx8a0q0vrbAw606VCpXpN73hx08YXjtV8fcXLvcSYbf/euHs+cqZs/1iwW8Nn/Cb5SO9wWx+P6I+P7IAqbfjJbxzj/WS8cV+Pv3syWA/Oy2/m7Ac3N00MfH7S+b/LrI+rhextDQj9//uS2Tzo2WNT6q5dXX/LL/YeMva+5bP2nk211Gj5u7qedNsx5OzO8E16/5yBAXp5j1+q/MTzC0/HKGQnL1oVyBlO9K/uVDOWMhB201yT7GMm4+5uA65/y6pt/MPq1vmjWznOGOk9hqyscLuUJyyFA+fitKPFbB4fb0X4amKrjyhtZVwQAA4OFvvsj+t9h+jifnm/j/rJWsvOM4mxOTC+vEPIjvyhviuxMNhVixQGCYOXyqmAexUAWDnRafTnKM706K++TX8q1vS9GQjjfYjPPLFsjd7SPVltigKsV7lpOTK2sln57l5ITCtoI4Pt5VZ5+fCkR2126NC8oa8qhk6LlONt4y/i/0XJUce67KyZWhch70XJUMPVdlQyFWcey5quRBz3WywU6LT1Ude66qCT3X/ipgmLe/3OTjWllPSa6sp/hUVss47kiS03lZsU8x/G41w7mJ/lfzqdhW/y23ZEsjsPh/qrFCZPt/6n/cvhPPt/DoYfiYkNjoqsdvr6cVSDrJelvrYXjxXN1wWzstTY+7pzk+7p7u+riLDE93eNw93fC4e0bIj7vw4QyHx90z0vS4e4bj426NeCGfmdy11/AJSs/Mg8ddS8HVMLSuMwUfd2s43odrJhdWzTwIGmsY7q01DYV4lmPQeFYeBI1nGuy0+FTLMWislYePu2hI1Q024/zTCuTu9pFqS2xQZ8d7ltrJlfVsn56ldi4ed6vHu+rs81OByO7arXHBaYY8zjb0XLUFH3fPduy5zkmuDOfkQc91tqHnOsdQiHUce646edBz1TbYafHpXMee69wQHnctt7/c5ONaWesmV9a6efC4W8OxF/kPO/8xNujvnuf4uHteHjzuWm7JlkZg8b+e4+NuvRAed3s6Pu6eH7+91i+QdJL1ttbT8Lh7vuG2Vj9Nj7v1HR93G7g+7iLDBg6Puw0Mj7sNQ37chQ8NHR53G6bpcbeh4+PuBfFCbpTctV/gE5Q2yoPHXUvBXWBoXY0EH3cvcLwPX5hcWBfmQdB4geHeeqGhEBs7Bo2N8yBobGSw0+LTRY5B40V5+LiLhnS+wWacX79A7m4fqbbEBtUk3rNcnFxZm/j0LBfn4nH3/HhXnX1+KhDZXbs1LqhvyKOJoee6WPBxt4ljz9U0uTI0zYOeq4mh52pqKMRLHHuuS/Kg57rYYKfFp2aOPVezEB53Lbe/3OTjWlkvTa6sl+bB4+4Fjr3If9j5j7FBf7e54+Nu8zx43LXcki2NwOL/ZY6Pu5cl3Lkw+Ltwwnmx+L7g2YOKv1+90IAKOwtcW/WPUm/uGfTo/d+trDG2dtfLT+rQ64IrE889Ykjr3+YMqdqy7OzDfiz8+oZqtVc9fv2GN4qV/HjYC8vL7767VeK5QbbsczMveLRbv5W3n3pJ66tefO/zmtMPv/PWYm1qXHzCXX021xu35PN8iefGHliz9KTfL9/9c/5e52044rXffu176dwV59yYf3v7I9qPfHPZCYnnWmw46rwfZsZuHPby7cPLzBzW8qt5VQ86fvG3JQ47fPEHux6a82j9BonnZjz23WlfnHvi0dFxHU587YrJ27bPfOKkQx99I/bYWXNHj1r+66OJ51psqPTronO2jip6UYnrPmnW77cvJh99bZOu1b+YNfS5zhP6V/1h9erEc09efdvaK7q80GzhiHEnFznk1naXPvHcYy+v+7V1uTdv2vH0srHDE89NtWWvpYB6cny8z8geWFc9vs/+8nB+fJ/92iIWCbRlGM61/G70cs+OFl66osDfbbtwZN/NK8eJDr8b8FzfLZaL02KRIFv0H5+iCddc6dl9lZdaeqmVl1p7qY2X2nqpnZfae6mDlzp6qZOXOnupi5eu9lJXL3Xz0jVe6u6lHl7q6aVeXurtpT5e6uulfl7q76VrvTTAS9d5aaCXBiXfgGBMwaRjV/kca+lzrJXPsdY+x9r4HGvrc6ydz7H2Psc6+Bzr6HOsk8+xzj7Huvgcu9rnWFefY918jl3jc6y7z7EePsd6+hzr5XOst8+xPj7H+voc6+dzrL/PsWt9jg3wOXadz7GBPscGFfj3Ytxl4vtYJNCWo9GnuilfGfBcLNx9VeBzI9GWQc/17G0V7NzxeHxqHejcn/561GoT5NxP/n4saxvg3HPjj3DtUp/7j25I+5Tn9vrn0bBDqnMX7nuM7Jji3IEJj5yd/vvc+omPp53/89wvczzKdvmvc0/J+dh79X+cWy7pEbmr4TG+237PvTy5rkev2d+5Q//VLqLd93Pu0H+3oWgP/3Of9Wlv0Z6+557n1zajvfzObeLbjqO9fc5d4N/mo33+fW75/fQP0b7/Onfq/vqSaL/kc6vst9+J9k8695P991HRa3Oe2+c/+rPogBznNv6vvi96XeK5Hf6zn4wOTDi38n/3qdFBhqArLz85DQrel69NzO/6ArnIEBdbltFE5tcHBxS9wXAzc/XhhgL/vi6VDzcYCzmvVLgMlettv4OxSKBscth6Y7yCDE6OjG+Mg0s8NtgngrG+9DXU5OiNhgoy2AjPWjioFDcaKxPsujFNPcbA4JwfSMzvJtceAxneZO8xHrjJ0GMMCbnHgA9D7D3GA0PS1GMMDJ7vFL+DsUigbHLYOjReQYYl9xhDfXqMYXnQYxhqcnSooYIMc4RnXVnaYtPNhsbwzz8GW26IV3DrJ0HLrXq4oTH4+ZDqdDAa7tATD09TT3xd8Po7PzG/W1x7YmR4i70nnn+LofKNCLknhg8j7D3x/BG5rHxBGtDwkBvQrUYfsjdrx2Qpw5GGupGXd7jrguf7tN/BWCRQNjlsvS3e8EYl3+Fu87nDjcqDO5yhh4jeZii0UY7wrBXJYtPtubzDpboGjWekw91hdMh3Lfg9mmBX9mYtw9GGMrwj5DLcXycbpHMOeu4YY4eWV9HAgOBt/a7E/O50jQaQ4Z32aOCuOw2A7go5GoAPd9mjgbvuCjkaQEMYUyDcxjbW2NiyN6tNljIcl6ZoYEDwfO/0OxiLBMomh63j4w3v7uRoYLxPNHB3HkQDhh4iOt5QaHc7wrNWJItNE0K+k6DxjHO4694TcjQAv+8h2JW9WcvwHkMZTgy5DPfXyaa6ztLJ3pumdwPXBm/rscT8JrlGA8hwkj0aiE0yFPJ9IUcD8OE+ezQQuy/kaAAN4d4C4Ta2yaRowFKG96cpGrg2eL6l/Q7GIoGyyWHrlHjDeyA5GpjiEw08kAfRgKGHiE4xFNoDjvCsFcli04Mh30nQeO53uOtODTkagN9TCXZlb9YynGoow2khl+H+OtlU11k62elpigb6B2/rbyfm95BrNIAMH7JHA28/ZCjkGSFHA/Bhhj0aeHtGyNEAGsL0AuE2todJ0YClDGemKRroHzzfNX4HY5FA2eSw9ZF4w5uVHA084hMNzMqDaMDQQ0QfMRTaLEd41opksenRkO8kaDwzHe66s0OOBuD3bIJd2Zu1DGcbyvCxkMtwf51squssnezjaYoG+gVv6+0S83vCNRpAhk/Yo4F2TxgKeU7I0QB8mGOPBtrNCTkaQEN4vEC4je1JUjRgKcO5aYoG+gXPt63fwVgkUDY5bH0q3vDmJUcDT/lEA/PyIBow9BDRpwyFNs8RnrUiWWx6OuQ7CRrPXIe77vyQowH4PZ9gV/ZmLcP5hjJ8JuQy3F8nm+o6Syf7bJqigb7B2/r7ifk95xoNIMPn7NHA+88ZCnlByNEAfFhgjwbeXxByNICG8GyBcBvbQlI0YCnDRWmKBvoGz3eD38FYJFA2OWx9Pt7wFidHA8/7RAOL8yAaMPQQ0ecNhbbYEZ61IllseiHkOwkazyKHu+6SkKMB+L2EYFf2Zi3DJYYyfDHkMtxfJ5vqOksnuzRN0UCf4G29YWJ+L7lGA8jwJXs00PAlQyEvCzkagA/L7NFAw2UhRwNoCEsLhNvYXiZFA5YyfCVN0UCf4Pk28DsYiwTKJoetr8Yb3vLkaOBVn2hgeR5EA4YeIvqqodCWO8KzViSLTa+FfCdB43nF4a67IuRoAH6vINiVvVnLcIWhDF8PuQz318mmus7Syb6Rpmigd/C2Pi8xvzddowFk+KY9Gpj3pqGQV4YcDcCHlfZoYN7KkKMBNIQ3CoTb2FaRogFLGa5OUzTQO3i+T/kdjEUCZZPD1rfiDW9NcjTwlk80sCYPogFDDxF9y1BoaxzhWSuSxaa3Q76ToPGsdrjrrg05GoDfawl2ZW/WMlxrKMN3Qi7D/XWyqa6zdLLr0hQN9Are1l9IzO9d12gAGb5rjwZeeNdQyOtDjgbgw3p7NPDC+pCjATSEdQXCbWzvkaIBSxluSFM00Ct4vov9DsYigbLJYev78Ya3MTkaeN8nGtiYB9GAoYeIvm8otI2O8KwVyWLTByHfSdB4NjjcdT8MORqA3x8S7MrerGX4oaEMPwq5DPfXyaa6ztLJbkpTNNAzeFtvlJjfx67RADL82B4NNPrYUMibQ44G4MNmezTQaHPI0QAawqYC4Ta2T0jRgKUMt6QpGugZPN8L/A7GIoGyyWHrp/GG91lyNPCpTzTwWR5EA4YeIvqpodA+c4RnrUgWmz4P+U6CxrPF4a67NeRoAH5vJdiVvVnLcKuhDL8IuQz318mmus7SyX6ZpmigR/C2PjQxv69cowFk+JU9Ghj6laGQt4UcDcCHbfZoYOi2kKMBNIQvC4Tb2L4mRQOWMtyepmigR/B8h/gdjEUCZZPD1m/iDe/b5GjgG59o4Ns8iAYMPUT0G0OhfesIz1qRLDZ9F/KdBI1nu8Ndd0fI0QD83kGwK3uzluEOQxnuDLkM99fJprrO0sl+n6ZooLtjNPCDazSADH9wiAZ+MBTyjyFHA/DhR4do4MeQowE0hO8LhNvYfiJFA5Yy3JWmaKB7GqKBn+MN75fkaOBnn2jglzyIBgw9RPRnQ6H9QooGLDb9GvKdBI1nl8Ndd3fI0QD83k2wK3uzluFuQxn+FnIZ7q+TTXWdpZP9PU3RwDXB2/rsxPz+cI0GkOEf9mhg9h+GQt4TcjQAH/bYo4HZe0KOBtAQfi8QbmP7kxQNWMpwb5qigWuC5/uo38FYJFA2OW3Nih/NiuS88+N/JEcDOCm30YChh4jChiDn7ozbFtCGHPCsFcliU74sW+W2Vhg0nr0Od92M4HbtMy4S3C74nZEVvl3Zm7UMMwxlmD/kMtxfJ5vqOksnm2ngmpfRQLfgbf3hxPwKZOUiQ1xsjAYeLmAo5CxD5XH1IcvYeOBDVi4bdZCGkJkVbmMraGxs2ZvVJksZFjLYlJfRQLfg0cAMv4OxSKBscth6QLzhHZgcDRzgEw0cmAfRgKGHiB5gKLQDs9zgWSuSxabCId9J0HgKOdx1i4QcDcDvIgS7sjdrGRYxlGHRkMtwf51squssnWyxNEUDXYO39Y2J+R3kGg0gw4Ps0cDGgwyFXDzkaAA+FLdHAxuLhxwNoCEUywq3sR1MigYsZVgiTdFA1+DRwPt+B2ORQNnksLVkvOGVSo4GSvpEA6XyIBow9BDRkoZCK5XlBs9akSw2HRLynQSNp4TDXffQkKMB+H0owa7szVqGhxrK8LCQy3B/nWyq6yyd7OFpigauDt7W30rM7wjXaAAZHmGPBt46wlDIR4YcDcCHI+3RwFtHhhwNoCEcnhVuYzuKFA1YyvDoNEUDVwePBlb7HYxFAmWTw9Zj4g2vdHI0cIxPNFA6D6IBQw8RPcZQaKWz3OBZK5LFpljIdxI0nqMd7rplQo4G4HcZgl3Zm7UMyxjK8NiQy3B/nWyq6yyd7HFpiga6BG/rhyfmd7xrNIAMj7dHA4cfbyjksiFHA/ChrD0aOLxsyNEAGsJxWeE2thNI0YClDMulKRroEjwaOMzvYCwSKJsctpaPN7wKydFAeZ9ooEIeRAOGHiJa3lBoFbLc4FkrksWmE0O+k6DxlHO461YMORqA3xUJdmVv1jKsaCjDk0Iuw/11sqmus3SyldIUDXQO3tYXJeZ3sms0gAxPtkcDi042FHLlkKMB+FDZHg0sqhxyNICGUCkr3MZWhRQNWMqwapqigc7Bo4GFfgdjkUDZ5LD1lHjDq5YcDZziEw1Uy4NowNBDRE8xFFq1LDd41opksenUkO8kaDxVHe661UOOBuB3dYJd2Zu1DKsbyvC0kMtwf51squssnezpaYoGOgVv67cl5neGazSADM+wRwO3nWEo5BohRwPwoYY9GritRsjRABrC6VnhNrYzSdGApQxrpika6BQ8GhjpdzAWCZRNDlvPije8WsnRwFk+0UCtPIgGDD1E9CxDodXKcoNnrUgWm84O+U6CxlPT4a5bO+RoAH7XJtiVvVnLsLahDM8JuQz318mmus7SydZJUzTQMXhbb5CY37mu0QAyPNceDTQ411DIdUOOBuBDXXs00KBuyNEAGkKdrHAb23mkaMBShvXSFA10DB4N1Pc7GIsEyiaHrefHG1795GjgfJ9ooH4eRAOGHiJ6vqHQ6me5wbNWJItNDUK+k6Dx1HO46zYMORqA3w0JdmVv1jJsaCjDC0Iuw/11sqmus3SyjdIUDXQI3tbHJeZ3oWs0gAwvtEcD4y40FHLjkKMB+NDYHg2MaxxyNICG0Cgr3MZ2ESkasJRhkzRFAx2CRwNj/Q7GIoGyyWHrxfGG1zQ5GrjYJxpomgfRgKGHiF5sKLSmWW7wrBXJYtMlId9J0HiaONx1m4UcDcDvZgS7sjdrGTYzlOGlIZfh/jrZVNdZOtnmaYoG2gdv670T87vMNRpAhpfZo4HelxkK+fKQowH4cLk9Guh9ecjRABpC86xwG1sLUjRgKcMr0hQNtA8eDfTyOxiLBMomh61XxhveVcnRwJU+0cBVeRANGHqI6JWGQrsqyw2etSJZbGoZ8p0EjecKh7tuq5CjAfjdimBX9mYtw1aGMmwdchnur5NNdZ2lk22TpmigXfC2/mJifm1dowFk2NYeDbzY1lDI7UKOBuBDO3s08GK7kKMBNIQ2WeE2tvakaMBShh3SFA20Cx4NLPE7GIsEyiaHrR3jDa9TcjTQ0Sca6JQH0YChh4h2NBRapyw3eNaKZLGpc8h3EjSeDg533S4hRwPwuwvBruzNWoZdDGV4dchluL9ONtV1lk62a5qigbbB23osMb9urtEAMuxmjwZi3QyFfE3I0QB8uMYeDcSuCTkaQEPomhVuY+tOigYsZdgjTdFA2+DRQGm/g7FIoGxy2Noz3vB6JUcDPX2igV55EA0YeohoT0Oh9cpyg2etSBabeod8J0Hj6eFw1+0TcjQAv/sQ7MrerGXYx1CGfUMuw/11sqmus3Sy/dIUDbQJ3tYLJ+bX3zUaQIb97dFA4f6GQr425GgAPlxrjwYKXxtyNICG0C8r3MY2gBQNWMrwujRFA22CRwMH+h2MRQJlk8PWgfGGNyg5GhjoEw0MyoNowNBDRAcaCm1Qlhs8a0Wy2HR9yHcSNJ7rHO66N4QcDcDvGwh2ZW/WMrzBUIY3hlyG++tkU11n6WQHpykaaB28rfdMzO8m12gAGd5kjwZ63mQo5CEhRwPwYYg9Gug5JORoAA1hcFa4jW0oKRqwlOGwNEUDrYNHAz38DsYigbLJYevN8YY3PDkauNknGhieB9GAoYeI3mwotOFZbvCsFcli0y0h30nQeIY53HVHhBwNwO8RBLuyN2sZjjCU4a0hl+H+OtlU11k62ZFpigZaBW/rxRPzu801GkCGt9mjgeK3GQp5VMjRAHwYZY8Gio8KORpAQxiZFW5ju50UDVjKcHSaooFWwaOBg/wOxiKBsslh6x3xhjcmORq4wycaGJMH0YChh4jeYSi0MVlu8KwVyWLTnSHfSdB4Rjvcde8KORqA33cR7MrerGV4l6EMx4ZchvvrZFNdZ+lkx6UpGmhpWGQ3Mb/xrtEAMhyfZb/u7pDv8LDr7qx9B2KR4Ju1EaHCjssKt1FMIN21LeVyTy4bahCf73Eow7xsUFc5NqiJrg0KGU50aFD3htygYNe9edSgUp2Ogr83y63CxILlkaeV5ErD6raJ+U1yrSTIcJJDjzPJ0GLvC7lCwYf7HAr5vpCfwVCJ7nMIDyYYeE0OORwE28mOjTV7s9atyQb/7w85xNvfHTnVdZY78pSQyxCMpjjcCCzlgN9GR3hOgo2D4ku0D4zvr4vvB8T318b3/eP7fvF93/i+T3zfO77vFd/3jO97xPfd4/tr4vtu8X3X+P7q+L5LfN85vu8U33eM7zvE9+3j+3bxfdv4vk183zq+bxXft4zvr4rvr4zv38v/9359fP9ufL8uvn8nvl8b378d36+J79+K71fH96vi+5Xx/Zvx/Rvx/evx/Yr4/rX4fnl8/2p8/0p8/3J8vyy+fym+XxrfvxjfL4nvX4jvF8f3z8f3i+L7hfH9Am//gFd3HvTSVC9N89J0Lz3kpRleethLM730iJdmeelRL8320mNeetxLT3hpjpee9NJcLz3lpXleetpL8730jJee9dJzXlrgpYVeWuSl57202EsvZCVV5Pg+Fgm0RY8zRGqJm7Wfm5g/uE0PkB6v7zXY9CDJpkkGm6aSbLrPYNM0kk2TDTZNJ9l0v8Gmh0g2TTHYNINk0wMGmx4m2fSgwaaZJJumGmx6hGTTNINNs0g2TTfY9CjJpocMNs0m2TTDYNNjJJseNtj0OMmmmQabniDZ9IjBpjkkm2YZbHqSZNOjBpvmkmyabbDpKZJNjxlsmkey6XGDTU+TbHrCYNN8kk1zDDY9Q7LpSYNNz5Jsmmuw6TmSTU8ZbFpAsmmewaaFJJueNti0iGTTfINNz5NsesZg02KSTc8abHrB0aao0aYlwfM5NTf5vJg6nyKJv1048ve75Oz/XhJ/d90t/n7xmuz3k1n7zlvq/f2Sl5Z56eWk93/WYU7dDWW11PCO/BXHcrXa38Ng/0sG+18l2d/TYP8yg/3LDfb71cNX4vXw1fh+eXz/ckI9fM37e4WXXvfSG7msh70MHF4zcHiTVI69DfavMNi/kmR/H4P9rxvsX5XLevhmvN6tjO9XxfdvJNTD1d7fb3lpjZfezmU97GvgsNrAYS2pHPsZ7H/LYP87JPv7G+xfY7B/XS7r4dp4vXsnvl8X37+dUA/f9f5e76X3vLQhl/XwWgOHdw0c3s8lh/fjfq+P79+L7zckcNjo/f2Blz700kcpvk+msndTcHuL5Safj1Pnk5H428lcNsU5bIzvn4vHbR8ncNns/f2Jl7Z46dP48czIPlv/y/4UW3SzoVwTx9V/Fi+fz5PKyVxhNxsq4Wf7P7dl0rnRzw2OAWiBiP8kh0gKf5LzTfx/1sL4zNjIsretWfED2RMZtmb9u3YkF4wF9n/k/Y8BQX/3i6zAMHP4hOuG5tKnzw12Wnz68j98Sr420acv4z7h74IJ/iT6lGKL+pybb02J1tcWeLhVh0rlitT7/rCDJwyv/eqYm2uXO8nwu/80BmTwWbw+Zbf2WKBfiES/8s7f5qWvU9zVUvG1PK19ZSi37cZOIq+GsG53bOjfZOUiw2+y7Nd9a4Dpate3CZUjFrFv1spkeXTeZvD/uzRVpu8cK9MO18qEDHc4VKadIVcm2LXTsTK5NIydWfZ48XtjYRWK77+K57Utvv8667+PI58fvPSjl37K5TPFV1k2LtnnpmKxK8tWRtmb9b3y9wabfjb4mlg+uxLKIdG2lD8S+fvuhn3P/PZrYe8vXvrVS7uTytnK6WsDp98MnPxsSXVNdv0Nen42B2t7/J1UBxPfU6Y694+Q2aK+fW3IA2X9uwPbPUa2Vj/A1NI3geseBz+ikfTc2M8z2pi9/el6Yz8vfrG1cv9pKIS9IQcB8GGvQyHvNUZvYJzxH+fEIoG2ArDzsNz9RjPH6zo5XteffF1Xx+t6Ol7XxfG6mON1NzheV8XxusGO18Ucr2vneF0/x+tijtd1drzOtR25XhdzvK6343Wu5TfI8TpXLn3Rl0aTDlrvH5abfXIe5sz2GiMk6+8fk//vG5s1sjLdpAvanliy330mXufCDdeH6VfU0S+/66wBlcXOfMHtjLrYkl2HYgHzcC2bYwxPSBmGsvnrx5NsCcLfod3ks5Rb/lz6kOr0v4LggnbfbysTrl2orxkF7fUw01DPGT7kD7n/KWCoH3ggwfejqF+mRhsjxnr590WOmVmfutiP1jv27t2bmF9WwVxkmGWs9cg8y1DrCxY03LUdfSho7FHgQ0FjTf7fozXtuv89Wvtv/3u09t9ijtf979Haf/vfo3Wqi1wzKxhyeI0QMNMhjC30fyiMzX5Usz4iHOAQImKzsrIENAcaH4NdyrtAyCF/YWOglFfRcLng5+bIr4hrNFwufrH1uqIhR7iwq2iCAnQsYt+sFaSQwadiuazkqX6/fORv/60+lDfkcVDIHTMYHeTQqRV3fN9XPBfvMdFpFXbgbekYDzZ2KoUi+0ae58jUaKOlU8lNPmUjnHwK5bLepiqnEyN/1ylrXcgwnHtixM7KOQI7KGRgFSJ/N3QrsIMMjaeE0QerLdGkPIL6bGVVMuSyQCXMrsCJ16XKxrXyprKnVMg3mewbpXXsseVGaQl2Dgk5+q0QzyNiu+6vG8kBkb+nK/kaYrCBdUM5IcLJx3rjsj49oZ+wPG3i/OIFw78x/nOhMR9Lm06cyXVovN4eVjAXN7NDHKPDQ3MRHSLPQx1ucIcYOo7DHf06PA++clvsPCLkr9yFCpqeTP5pLGE+7R0Z8k0MPpR0CCaOCtkudPQuQc7RBF6lHOw6JmS7cCNx4VU6ZLsKOT6Jx9L0GqxS8HNz5FfG9TVYpfjF1uuODfk1GOw61iHac8kLN4HDHSrJXWXCtQs3nCMd7BprtCt7sz5JHGe4WRlYRQ32+z5JpLL75Mjfdct64zzZkMfxIXdsYH+8Q90o6xhslc2DYOt4Q59xgjHYyt6sdbhc+uvwX5u1LuL7l+WJG+cf4VBfyof89ulgox8HO/pRIeT2eEjcrjAflE4kBJcubCum6fW+JVjKTT4VI5x8yuWyfFOVU5VI+K/3q0TsrKLJf8QCXRaJHh8ysMqRv29aVmCWG91JxsaTVyshB220e/fu/cTveCySOg/8k2hrpXhAf3LBSM7oolK810k8drKPgdZ3+xWDFcR4qCZVMhTayUZ41oqHClSJ9PSDHv8oh16/csHw7Trawa4qBLuOcbCrKsGu0g52nUKwK+ZgVzWDXegX8H1oWvy/UTdRD8Ac/uG3Chb4X/pf4iTHtpKJfr+iQ1s51fhdqoLP8VjEtln7gVMLhp9HdcJYiZMMcUJ2AGktz9OMfR/GJUyL//f/+r7/pXSm/bWtIDGvof3+9ZB1msPDWXVD+z3d2K+e6HM8FglmV/IfsUCXcfrV08ONEf+574X5oH0Gryz3GWi7LnoGoSxrCHBAPxLwXOc8znRg7ZdPqnpX09CnpYt3TUK9O4vEu1bwfPKli3ctAu+zSbxrB88nI128axN4n0PiXSd4PvnTxbsOgfe5JN51g+eTmS7edQm8zyPxrhc8nwLp4l2PwPt8Eu/6wfPJShfv+gTeDUi8GwbPp2C6eDck8L6AxLtR8HwKpYt3IwLvC0m8GwfP54B08W5M4H0RiXeT4PkcmC7eTQi8Lybxbho8n8Lp4t2UwPsSEu9mwfMpki7ezQi8LyXxbh48n6Lp4t2cwPsygfekhiUGnfO4nFTvWgTP56B08W5BqHdXkHhfGTyf4unifSWB91Uk3i2D53Nwuni3JPBuReLdOng+JdLFuzWBdxsS77bB8ymZLt5tCbzbkXi3D55PqXTxbk/g3YHEu2PwfA5JF++OBN6dSLw7B8/n0HTx7kzg3YXE++rg+RyWLt5XE3h3JfHuFjyfw9PFuxuB9zUk3t2D53NEunh3J/DuQeLdM3g+R6aLd08C714k3r2D53NUunj3JvDuQ+LdN3g+R6eLd18C734k3v2D53NMunj3J/C+lsR7QPB8SqeL9wAC7+tIvAcGzyeWLt4DCbwHkXhfHzyfMunifT2B9w0C37lK5w8/jxtJ9W5w8HyOSxfvwYR6dxOJ95Dg+RyfLt5DCLyHkngPC55P2XTxHkbgfTOJ9/Dg+ZyQLt7DCbxvIfEeETyfcuniPYLA+1YS75HB8ymfLt4jCbxvI/EeFTyfCuniPYrA+3YS79HB8zkxXbxHE3jfQeI9Jng+FdPFewyB950Cz32rMsLP4y5SvRsbPJ9K6eI9llDvxpF4jw+ez8np4j2ewPtuEu8JwfOpnC7eEwi87yHxnhg8nyrp4j2RwPteEu9JwfOpmi7ekwi87yPxnhw8n1PSxXsygff9JN5TgudTLV28pxB4PyAQFy8hzPt5kFTvpgbPp3q6eE8l1LtpJN7Tg+dzWrp4TyfwfojEe0bwfE5PF+8ZBN4Pk3jPDJ7PGeniPZPA+xES71nB86mRLt6zCLwfJfGeHTyfM9PFezaB92Mk3o8Hz6dmung/TuD9BIn3nOD5nJUu3nMIvJ8k8Z4bPJ9a6eI9l8D7KRLvecHzOTtdvOcReD9N4j0/eD6108V7PoH3MyTezwbP55x08X6WwPs5Eu8FwfOpky7eCwi8F5J4Lwqez7np4r2IwPt5Eu/FwfOpmy7eiwm8XyDxXhI8n/PS9v6bwPtFEu+lwfOply7eSwm8XyLxXhY8n/PTxXsZgffLJN6vBM+nfrp4v0Lg/SqJ9/Lg+TRIF+/lBN6vkXivCJ5Pw3TxXkHg/TqJ9xvB87kgXbzfIPB+k8R7ZfB8GqWL90oC71Uk3quD53NhunivJvB+i8R7TfB8GqeL9xoC77dJvNcGz+eidPFeS+D9Don3uuD5NEkX73UE3u+SeK8Pns/F6eK9nsD7PRLvDcHzaZou3hsIvN8n8d4YPJ9L0sV7I4H3ByTeHwbPp1m6eH9I4P0Rifem4PlcmrZ1Hwi8Pybx3hw8n+bp4r2ZwPsTEu8twfO5LF28txB4f0ri/VnwfC5PF+/PCLw/J/HeGjyfFunivZXA+wsS7y+D53NFunh/SeD9FYn3tuD5XJku3tsIvL8m8d4ePJ+r0sV7O4H3NyTe3wbPp2W6eH9L4P0difeO4Pm0ShfvHQTeO0m8vw+eT+t08f6ewPsHEu8fg+fTJl28fyTw/onEe1fwfNqmi/cuAu+fSbx/CZ5Pu3Tx/oXA+1cS793B82mfLt67Cbx/I/H+PXg+HdLF+3cC7z9IvPcEz6djunjvIfD+k8R7b/B8OqWL914C70ghDu9o8Hw6p4t3tFD4eeQj8c4Ink+XdPHOIPDOT+KdGTyfq9PFO5PAuwCJd1bwfLqmi3cWgXdBEu9CwfPpli7ehQi8DyDxPjB4Pteki/eBBN6FSbyLBM+ne7p4FyHwLkriXSx4Pj3SxbsYgfdBJN7Fg+fTM128ixN4H0ziXSJ4Pr3SxbsEgXdJEu9SwfPpnS7epQi8DyHxPjR4Pn3SxftQAu/DSLwPD55P33TxPpzA+wgS7yOD59MvXbyPJPA+isT76OD59E8X76MJvI8h8S4dPJ9r07b+LIF3jMS7TPB8BqSLdxkC72NJvI8Lns916eJ9HIH38STeZYPnMzBdvMsSeJ9A4l0ueD6D0sW7HIF3eRLvCsHzuT5dvCsQeJ9I4l0xeD43pIt3RQLvk0i8KwXP58Z08a5E4H0yiXfl4PkMThfvygTeVUi8qwbP56Z08a5K4H0KiXe14PkMSRfvagTep5J4Vw+ez9B08a5O4H0aiffpwfMZli7epxN4n0HiXSN4Pjeni3cNAu8zSbxrBs9neLp41yTwPovEu1bwfG5JF+9aBN5nk3jXDp7PiHTxrk3gfQ6Jd53g+dyaLt51CLzPJfGuGzyfkeniXZfA+zwS73rB87ktXbzrEXifT+JdP3g+o9LFuz6BdwMS74bB87k9XbwbEnhfQOLdKHg+o9PFuxGB94Uk3o2D53NHung3JvC+iMS7SfB8xqSLdxMC74tJvJsGz+fOdPFuSuB9CYl3s+D53JUu3s0IvC8l8W4ePJ+x6eLdnMD7MhLvy4PnMy5dvC8n8G5B4n1F8HzGp4v3FQTeV5J4XxU8n7vTxfsqAu+WJN6tguczIV28WxF4tybxbhM8n3vSxbsNgXdbEu92wfOZmC7e7Qi825N4dwiez73p4t2BwLsjiXen4PlMShfvTgTenUm8uwTP57508e5C4H01iXfX4PlMThfvrgTe3Ui8rwmez/3p4n0NgXd3Eu8ewfOZki7ePQi8e5J49wqezwPp4t2LwLs3iXef4Pk8mC7efQi8+5J49wuez9R08e5H4N3fkEeGlyp6aVr8v88sGImc5aWzvXSOl8710nleOt9LDbx0gZcu9NJFXrrYS5d46VIvXealy710hZeu8lIrL7XxUjsvdfBSJy918VJXL13jpR5e6uWlPl7q56VrvXSdlwZ56QYv3eilm7w01Es3e+kWL93qpdu8dLuX7vDSnV66y0vjvHS3l+7x0r1eus9L93vpAS896KVpXnrISw976REvPeqlx7z0hJee9NJTXnraS8946TkvLfTS8156wUsveuklL73spVe9hLXmsf451uTGOtFYuxjr6WKNV6w7irUwsT4j1gzEOnZYWw3rfWENKqyLhLV6sH4M1jTBOhtY+wHrEUAjH7rt0BKHvjU0l6EDDG1a6KVCwxO6ktA6hP4eNOGgUwbtLOg5QWMIujfQYoE+CDQroKPw19x+L2EONOblYq4o5i9iTh3meWHuEebDYI4G5g1gLDvGV2PML8ahYmwkxuthDBnGNWGsDcZ/YEwCvpPj2y2+J+IbF7674FsA3k/jnSne4+HdEt534Bkcz4V4VkH8jJgOcQbufeiP0Ueg3mZv+Yx1vpL3z/EFg/cVOLdGQXs+NQx5XGtoh7Cjos/xWCSYXcl/xAJdFomeQdD7tXBw+P1MlGVFe1nms9SXAbyy/Gezch5QKPw8rstlWabUEMY58X3idamyyTCcW8Vgz0CBci9YIPw8BglwqEnoy64X4FCLwOEGAQ61CRxuFOBQh8BhsACHugQONwlwqEfgMESAQ30Ch6ECHBoSOAwT4NCIwOFmAQ6NCRyGC3BoQuBwiwCHpgQOIwQ4NCNwuFWAQ3MCh5ECHDZlhZ/HbQIcWhDqwygBDlcSONwuwKElgcNoAQ6tCRzuEODQlsBhjACH9gQOdwpw6EjgcJcAh84EDmMFOFxN4DBOgEM3AofxAhy6EzjcLcChJ4HDBAEOvQkc7hHg0JfAYaIAh/4EDvcqjPcgcJgkwGEggcN9AhyuJ3CYLMChdP7w87hfgMNgQn2YIsBhCIHDAwIchhE4PCjAYTiBw1QBDiMIHKYJcBhJ4DBdgMMoAoeHBDiMJnCYIcBhDIHDwwIcVmWEn8dMAQ5jCfXhEQEO4wkcZglwmEDg8KgAh4kEDrMFOEwicHhMgMNkAofHBThMIXB4QoDDEsI4sTkCHKYS6sOTAhymEzjMFeAwg8DhKQEOMwkc5glwmEXg8LQAh9kEDvMFODxO4PCMAIc5BA7PCnCYS+DwnACHeQQOCwQ4zCdwWCjA4VkCh0UCHBYQODwvwGERgcNiAQ6LCRxeUHj/QOCwRIDDUgKHFwU4LCNwWCrA4RUCh5cEOCwncFgmwGEFgcPLAhzeIHB4RYDDSgKHVwU4rCZwWC7AYQ2Bw2sCHNYSOKwQ4LCOwOF1AQ7rCRzeEOCwgcDhTQEOGwkcVgpw+JDAYZWCTg6Bw2oBDpsJHN4S4LCFwGGNAIfPCBzeFuCwlcBhrQCHLwkc3hHgsI3AYZ0Ah+0EDu8KcPiWwGG9AIcdBA7vCXD4nsBhgwCHHwkc3hfgsIvAYaMAh18IHD4Q4LCbwOFDAQ6/Ezh8JMBhD4HDJgEOewkcPhbgECWsk7VZgEMGgcMnAhwyCRy2CHDIInD4VIBDIQKHzwQ4HEjg8LkAhyIEDlsFOBQjcPhCgENxAocvBTiUIHD4SoBDKQKHbQIcDiVw+FqAw+EEDtsFOBxJ4PCNAIejCRy+VdBlJXD4ToBDGQKHHQIcjiNw2CnAoSyBw/cCHMoROPwgwKECgcOPAhwqEjj8JMChEoHDLgEOlQkcfhbgUJXA4RcBDtUIHH4V4FCdwGG3AIfTCRx+E+BQg8DhdwEONQkc/hDgUIvAYY8Ah9oEDn8KcKhD4LBXgENdAofIAf/3OdQjcIgKcKhP4JBPgENDAocMAQ6NCBzyC3BoTOCQKcChCYFDAQEOTQkcsgQ4NCNwKCjAoTmBQyEBDpcTOBwgwOEKAocDBThcReBQWIBDKwKHIgIc2hA4FBXg0I7AoZgAhw4EDgcJcOhE4FBcgEMXAoeDBTh0JXAoIcDhGgKHkgIcehA4lBLg0IvA4RABDn0IHA4V4NCPwOEwA4cML53kpWnx/x7k2Xe9l27w0o1eGuylm7w0xEtDvTTMSzd7abiXbvHSCC/d6qWRXrrNS6O8dLuXRnvpDi+N8dKdXrrLS2O9NM5L4710t5cmeOkeL0300r1emuSl+7w02Uv3e2mKlx7wEtanx9rsWJcca3JjPWqsxYx1iLEGL9afxdqrWHcUa25ivUmstYh1BrHGHtaXw9pqWFcMa2phPSmspYR1hLCGDtaPwdopWDcEa2ZgvQislYB1AqCRD314aKNDFxya2NCDhhYydIChgQv9V2ifQvcTmpfQe4TWIXT+oHEHfTdom0HXC5pW0HOClhF0fKBhA/0WaJdAtwOaFdBrgFYB5uljjjrmZ2NuMublYk4q5mNiLiLm4WEOGuZfYe4R5t1gzgnmW2CuAcbZY4w5xldjbDHG1WJMKcZTYiwhxtFhDBnGT2HsEMbNYMwIxktgrAC+k+MbMb6P4tsgvovhmxC+h+BbAN6D4x0w3n/i3R/ee+GdD9534Fkfz7l4xsPzDWJ7xLWI6RDP4F6O+xj6cPRfaLuot9lbvqQ6X6XjRX23VJ1WYeHF9Z4bNqxFq/LVvmowaFHvcXW37Lp7p/f/jy8YiVxXKHgbwfkDC/07n1TXJeaRyqbDjf3RST7HY5FgdiX/EQt0WSQ6oFD4/ZGFg8PvZ6IsKxY0l2XG8QWDl+URvLL8Z7NyPuKA8PM4UoBDwQLh53GUAIeaBO2QowU41CJwOEaAQ20Ch9ICHOoQOMQEONQlcCgjwKEegcOxAhzqEzgcJ8ChIYHD8QIcGhE4lBXg0JjA4QQBDk0IHMoJcGhK4FBegEMzAocKAhyaEzicKMBhU1b4eVQU4NCCUB9OEuBwJYFDJQEOLQkcThbg0JrAobIAh7YEDlUEOLQncKgqwKEjgcMpAhw6EzhUE+BwNYHDqQIcuhE4VBfg0J3A4TQBDj0JHE4X4NCbwOEMAQ59CRxqCHDoT+BwpgCHAQQONQU4DCRwOEuAw/UEDrUEOJTOH34eZwtwGEyoD7UFOAwhcDhHgMMwAoc6AhyGEzicK8BhBIFDXQEOIwkczhPgMIrAoZ4Ah9EEDucLcBhD4FBfgMOqjPDzaCDAYSyhPjQU4DCewOECAQ4TCBwaCXCYSOBwoQCHSQQOjQU4TCZwuEiAwxQChyYCHJYQxoldLMBhKqE+NBXgMJ3A4RIBDjMIHJoJcJhJ4HCpAIdZBA7NBTjMJnC4TIDD4wQOlwtwmEPg0EKAw1wChysEOMwjcLhSgMN8AoerBDg8S+DQUoDDAgKHVgIcFhE4tBbgsJjAoY3C+wcCh7YCHJYSOLQT4LCMwKG9AIdXCBw6CHBYTuDQUYDDCgKHTgIc3iBw6CzAYSWBQxcBDqsJHK4W4LCGwKGrAIe1BA7dBDisI3C4RoDDegKH7gIcNhA49BDgsJHAoacAhw8JHHop6OQQOPQW4LCZwKGPAIctBA59BTh8RuDQT4DDVgKH/gIcviRwuFaAwzYChwECHLYTOFwnwOFbAoeBAhx2EDgMEuDwPYHD9QIcfiRwuEGAwy4ChxsFOPxC4DBYgMNuAoebBDj8TuAwRIDDHgKHoQIc9hI4DBPgECWsAXazAIcMAofhAhwyCRxuEeCQReAwQoBDIQKHWwU4HEjgMFKAQxECh9sEOBQjcBglwKE4gcPtAhxKEDiMFuBQisDhDgEOhxI4jBHgcDiBw50CHI4kcLhLgMPRBA5jFXRZCRzGCXAoQ+AwXoDDcQQOdwtwKEvgMEGAQzkCh3sEOFQgcJgowKEigcO9AhwqEThMEuBQmcDhPgEOVQkcJgtwqEbgcL8Ah+oEDlMEOJxO4PCAAIcaBA4PCnCoSeAwVYBDLQKHaQIcahM4TBfgUIfA4SEBDnUJHGYIcKhH4PCwAIf6BA4zBTg0JHB4RIBDIwKHWQIcGhM4PCrAoQmBw2wBDk0JHB4T4NCMwOFxAQ7NCRyeEOBwOYHDHAEOVxA4PCnA4SoCh7kCHFoRODwlwKENgcM8AQ7tCByeFuDQgcBhvgCHTgQOzwhw6ELg8KwAh64EDs8JcLiGwGGBAIceBA4LBTj0InBYJMChD4HD8wIc+hE4LDZwyPBSJS9Ni//3Ud61R3vpGC+Vxu94qYyXjvXScV463ktlvXSCl8p5qbyXKnjpRC9V9NJJXqrkpZO9VNlLVbxU1UuneKmal071UnUvneal0710hpdqeOlML9X00llequWls71U20vneAnr02NtdqxLjjW5sR411mLGOsRYgxfrz2LtVaw7ijU3sd4k1lrEOoNYYw/ry2FtNawrhjW1sJ4U1lLCOkJYQwfrx2DtFKwbgjUzsF4E1krAOgHQyIc+PLTRoQsOTWzoQUMLGTrA0MCF/iu0T6H7Cc1L6D1C6xA6f9C4g74btM2g6wVNK+g5QcsIOj7QsIF+C7RLoNsBzQroNUCrAPP0MUcd87MxNxnzcjEnFfMxMRcR8/AwBw3zrzD3CPNuMOcE8y0w1wDj7DHGHOOrMbYY42oxphTjKTGWEOPoMIYM46cwdgjjZjBmBOMlMFYA38nxjRjfR/FtEN/F8E0I30PwLQDvwfEOGO8/8e4P773wzgfvO/Csj+dcPOPh+QaxPeJaxHSIZ3Avx30MfTj6L7Rd1NvsLZ+xzlf0/jk+Ya58lY4X9d1SdVqFhRfXe27YsBatylf7qsGgRb3H1d2y6+6d8XOPPMCeD64JmscLB9j6o0o+x2ORYHYl/xELdFkkesQB4fdHLxjzMP5+JsqyYkFzWea31JclvLL8Z7NyXkIoyxcFOBQsEH4eSwU41CRoh7wkwKEWgcMyAQ61CRxeFuBQh8DhFQEOdQkcXhXgUI/AYbkAh/oEDq8JcGhI4LBCgEMjAofXBTg0JnB4Q4BDEwKHNwU4NCVwWCnAoRmBwyoBDs0JHFYLcNiUFX4ebwlwaEGoD2sEOFxJ4PC2AIeWBA5rBTi0JnB4R4BDWwKHdQIc2hM4vCvAoSOBw3oBDp0JHN4T4HA1gcMGAQ7dCBzeF+DQncBhowCHngQOHwhw6E3g8KEAh74EDh8JcOhP4LBJgMMAAoePBTgMJHDYLMDhegKHTwQ4lM4ffh5bBDgMJtSHTwU4DCFw+EyAwzACh88FOAwncNgqwGEEgcMXAhxGEjh8KcBhFIHDVwIcRhM4bBPgMIbA4WsBDqsyws9juwCHsYT68I0Ah/EEDt8KcJhA4PCdAIeJBA47BDhMInDYKcBhMoHD9wIcphA4/KAwT40wTuxHAQ5TCfXhJwEO0wkcdglwmEHg8LMAh5kEDr8IcJhF4PCrAIfZBA67BTg8TuDwmwCHOQQOvwtwmEvg8IcAh3kEDnsEOMwncPhTgMOzBA57BTgsIHCIHPh/n8MiAoeoAIfFBA75BDgsIXDIEOCwlMAhvwCHZQQOmQIcXiFwKCDAYTmBQ5YAhxUEDgUFOLxB4FBIgMNKAocDBDisJnA4UIDDGgKHwgIc1hI4FBHgsI7AoagAh/UEDsUEOGwgcDhIgMNGAofiAhw+JHA4WIDDJgKHEgIcNhM4lBTgsIXAoZQAh88IHA4R4LCVwOFQAQ5fEjgcJsBhG4HD4QIcthM4HCHA4VsChyMFOOwgcDhKgMP3BA5HC3D4kcDhGAEOuwgcSgtw+IXAISbAYTeBQxkBDr8TOBwrwGEPgcNxAhz2EjgcL8AhSliTsKwAhwwChxMEOGQSOJQT4JBF4FBegEMhAocKAhwOJHA4UYBDEQKHigIcihE4nCTAoTiBQyUBDiUIHE4W4FCKwKGyAIdDCRyqCHA4nMChqgCHIwkcThHgcDSBQzUBDqUJHE4V4FCGwKG6AIfjCBxOE+BQlsDhdAEO5QgczhDgUIHAoYYAh4oEDmcKcKhE4FBTgENlAoezBDhUJXCoJcChGoHD2QIcqhM41BbgcDqBwzkCHGoQONQR4FCTwOFcAQ61CBzqCnCoTeBwngCHOgQO9QQ41CVwOF+AQz0Ch/oCHOoTODQQ4NCQwKGhAIdGBA4XCHBoTODQSIBDEwKHCwU4NCVwaCzAoRmBw0UCHJoTODQR4HA5gcPFAhyuIHBoKsDhKgKHSwQ4tCJwaCbAoQ2Bw6UCHNoRODQX4NCBwOEyAQ6dCBwuF+DQhcChhQCHrgQOVwhwuIbA4UoBDj0IHK4S4NCLwKGlAIc+BA6tBDj0I3BobeCQ4aWTvTQt/t9LD4hEXvLSMi+97KVXvPSql5Z76TUvrfDS6156w0tvemmll1Z5abWX3vLSGi+97aW1XnrHS+u89K6X1nvpPS9t8NL7XtropQ+89KGXPvLSJi997KXNXvrES1u89KmXPvMS1qfH2uxYlxxrcmM9aqzFjHWIsQYv1p/F2qtYdxRrbmK9Say1iHUGscYe1pfD2mpYVwxramE9KaylhHWEsIYO1o/B2ilYNwRrZmC9CKyVgHUCoJEPfXhoo0MXHJrY0IOGFjJ0gKGBC/1XaJ9C9xOal9B7hNYhdP6gcQd9N2ibQdcLmlbQc4KWEXR8oGED/RZol0C34y/NCi9BqwDz9DFHHfOzMTcZ83IxJxXzMTEXEfPwMAcN868w9wjzbjDnBPMtMNcA4+wxxhzjqzG2GONqMaYU4ykxlhDj6DCGDOOnMHYI42YwZgTjJTBWAN/J8Y0Y30fxbRDfxfBNCN9D8C0A78HxDhjvP/HuD++98M4H7zvwrI/nXDzj4fkGsT3iWsR0iGdwL8d9DH04+i+0XdTb7C2fsc4fX9BjkzBXvkrHi/puqTqtwsKL6z03bFiLVuWrfdVg0KLe4+pu2XX3Tu//4/wXD7Dn8+IBwfNoY+yPTvY5HosEsyv5j1igyyLRJQeE3x8ROezL1HZdtGCB8PNoK8ChJkFvop0Ah1oEDu0FONQmcOggwKEOgUNHAQ51CRw6CXCoR+DQWYBDfQKHLgIcGhI4XC3AoRGBQ1cBDo0JHLoJcGhC4HCNAIemBA7dBTg0I3DoIcChOYFDTwEOm7LCz6OXAIcWhPrQW4DDlQQOfQQ4tCRw6CvAoTWBQz8BDm0JHPoLcGhP4HCtAIeOBA4DBDh0JnC4ToDD1QQOAwU4dCNwGCTAoTuBw/UCHHoSONwgwKE3gcONAhz6EjgMFuDQn8DhJgEOAwgchghwGEjgMFSAw/UEDsMEOJTOH34eNwtwGEyoD8MFOAwhcLhFgMMwAocRAhyGEzjcKsBhBIHDSAEOIwkcbhPgMIrAYZQAh9EEDrcLcBhD4DBagMOqjPDzuEOAw1hCfRgjwGE8gcOdAhwmEDjcJcBhIoHDWAEOkwgcxglwmEzgMF6AwxQCh7sFOCwhjBObIMBhKqE+3CPAYTqBw0QBDjMIHO4V4DCTwGGSAIdZBA73CXCYTeAwWYDD4wQO9wtwmEPgMEWAw1wChwcEOMwjcHhQgMN8AoepAhyeJXCYJsBhAYHDdAEOiwgcHhLgsJjAYYbC+wcCh4cFOCwlcJgpwGEZgcMjAhxeIXCYJcBhOYHDowIcVhA4zBbg8AaBw2MCHFYSODwuwGE1gcMTAhzWEDjMEeCwlsDhSQEO6wgc5gpwWE/g8JQAhw0EDvMEOGwkcHhagMOHBA7zFXRyCByeEeCwmcDhWQEOWwgcnhPg8BmBwwIBDlsJHBYKcPiSwGGRAIdtBA7PC3DYTuCwWIDDtwQOLwhw2EHgsESAw/cEDi8KcPiRwGGpAIddBA4vCXD4hcBhmQCH3QQOLwtw+J3A4RUBDnsIHF4V4LCXwGG5AIcoYR271wQ4ZBA4rBDgkEng8LoAhywChzcEOBQicHhTgMOBBA4rBTgUIXBYJcChGIHDagEOxQkc3hLgUILAYY0Ah1IEDm8LcDiUwGGtAIfDCRzeEeBwJIHDOgEORxM4vKugy0rgsF6AQxkCh/cEOBxH4LBBgENZAof3BTiUI3DYKMChAoHDBwIcKhI4fCjAoRKBw0cCHCoTOGwS4FCVwOFjAQ7VCBw2C3CoTuDwiQCH0wkctghwqEHg8KkAh5oEDp8JcKhF4PC5AIfaBA5bBTjUIXD4QoBDXQKHLwU41CNw+EqAQ30Ch20CHBoSOHwtwKERgcN2AQ6NCRy+EeDQhMDhWwEOTQkcvhPg0IzAYYcAh+YEDjsFOFxO4PC9AIcrCBx+EOBwFYHDjwIcWhE4/CTAoQ2Bwy4BDu0IHH4W4NCBwOEXAQ6dCBx+FeDQhcBhtwCHrgQOvwlwuIbA4XcBDj0IHP4Q4NCLwGGPAIc+BA5/CnDoR+Cw90BbHtbfP75gJFKx4L+vq9Lxor5bqk6rsPDies8NG9aiVflqXzUYtKj3uLpbdt290/v/08uEa9cJcbvyGe2KFA6eR9g+oE4e6/mQkXRdKh9ONpx7bMHg50YNbP75JxL8msrxPCK26yL5vXSAlzL9ftRoQ6WIrUxd8zkpwsmnYsSWT3J7SfX7aP9lC9raZbmC+w7EIvbNymCgoZ/Nl/h3vC5mFN6XpzlzQ6P567cz4vt88etQuYsmG2a0AYV0orGQTjQW0t69e3/1Ox6LpM4P/yT6lz8OPrNwJCeU/PGSSDyWmQDY5e51osPdawbh7uVi18NGu7K3/MHzGe/lE81fOLhNmYa7hoFrNKiv2RXTyhINN7/D3cgvr1Sn4/xDHMq7QOFw7SrnaFdWyHad4GhXwZDtKlXQza5CIdtVNuJm1wEh2wWbDnOw60CCXUc62FWYYNehDnYVMdiF+yoi8XPi/40+Bu0ZbQf1FHUC/OErfrdggf9/Jz8+FvZFg7MvaLj/FbTe610C16KF7XWtmKGuIeir7HM8FrFtVt+KFQ4/j4OMba5K5H9tLrnNWR90/no2MMSmOBflZM3nIEMexY3toYrP8VgkmF3Jf8QCXcZpD8Ud8sBm7W8PTn9/G/3nn4itvz3Yob8twatf+4y1XRctQahfJQU4oG8LeK5zHqUEONQkKJkeIsChFoHDoQIcahM4HCbAoQ6Bw+ECHOoSOBwhwKEegcORAhzqEzgcJcChIYHD0QIcGhE4HCPAoTGBQ2kBDk0IHGICHJoSOJQR4NCMwOFYAQ7NCRyOE+CwKSv8PI4X4NCCUB/KCnC4ksDhBAEOLQkcyglwaE3gUF6AQ1sChwoCHNoTOJwowKEjgUNFAQ6dCRxOEuBwNYFDJQEO3QgcThbg0J3AobIAh54EDlUEOPQmcKgqwKEvgcMpAhz6EzhUE+AwgMDhVAEOAwkcqgtwuJ7A4TQBDqXzh5/H6QIcBhPqwxkCHIYQONQQ4DCMwOFMAQ7DCRxqCnAYQeBwlgCHkQQOtQQ4jCJwOFuAw2gCh9oCHMYQOJwjwGFVRvh51BHgMJZQH84V4DCewKGuAIcJBA7nCXCYSOBQT4DDJAKH8wU4TCZwqC/AYQqBQwMBDksI48QaCnCYSqgPFwhwmE7g0EiAwwwChwsFOMwkcGgswGEWgcNFAhxmEzg0EeDwOIHDxQIc5hA4NBXgMJfA4RIBDvMIHJoJcJhP4HCpUW+namSf3g40E6AXgLnymCeOOdKYH4y5sZgXijmRmA/411w4L2EOFOb/YO4L5n1gzgPG+2OsO8Z5Y4wzxvdibCvGdWJMI8bzYSwbxnFhDBPG72DsCsZtYMwCvtfjWzW+0+IbJb7P4dsUvsvgmwTex+NdNN7D4h0k3r/h3RPeu+CdA5638ayJ5yw8YyC+RmyJuAoxBe6nuJegH0UfgvaDugNu2ZtVBwdquVa9Heh0WPMpacijubE9VPU5HosEsyv5j1igyzh6KM0d8sBm1du5LHg+Yent/FWdrHxQF2F78nWp/L2cV7/2GWu7Lno5oX61EODA0Nu5QoADQ2/nSgEODL2dqwQ4MPR2WgpwYOjttBLgwNDbaS3AgaG300aAA0Nvp60AB4beTjsBDgy9nfYCHBh6Ox0EODD0djoKcGDo7XQS4MDQ2+kswIGht9NFgANDb+dqAQ4MvZ2uAhwYejvdBDgw9HauEeDA0NvpLsCBobfTQ4ADQ2+npwAHht5OLwEODL2d3gIcGHo7fQQ4MPR2+gpwYOjt9BPgwNDb6S/AgaG3c60AB4bezgABDgy9nesEODD0dgYKcGDo7QwS4MDQ27legANDb+cGAQ4MvZ0bBTgw9HYGC3Bg6O3cJMCBobczRIADQ29nqAAHht7OMAEODL2dmwU4MPR2hgtwYOjt3CLAgaG3M0KAA0Nv51YBDgy9nZECHBh6O7cJcGDo7YwS4MDQ27ldgANDb2e0AAeG3s4dAhwYejtjBDgw9HbuFODA0Nu5S4ADQ29nrAAHht7OOAEODL2d8QIcGHo7dwtwYOjtTBDgwNDbuUeAA0NvZ6IAB4bezr0CHBh6O5MMHKApckpkn94ONBOgF4C58pgnjjnSmB+MubGYF4o5kZgPiLlwmAeGOVCY/4O5L5j3gTkPGO+Pse4Y540xzhjfi7GtGNeJMY0Yz4exbBjHhTFMGL+DsSsYt4ExC/hej2/V+E6Lb5T4PodvU/gug28SeB+Pd9F4D4t3kHj/hndPeO+Cdw543sazJp6z8IyB+BqxJeIqxBS4n+Jegn4UfQjaD+oOuGVvVh2ck/BPAvcgejvQ6bDm08KQx33G9nCKz/FYJJhdyX/EAl3G0UO5zyEPbFa9ncnB8wlLb+cvk618UBdhe/J1qfy9n1e/9hlruy56P6F+TRHgwNDbeUCAA0Nv50EBDgy9nakCHBh6O9MEODD0dqYLcGDo7TwkwIGhtzNDgANDb+dhAQ4MvZ2ZAhwYejuPCHBg6O3MEuDA0Nt5VIADQ29ntgAHht7OYwIcGHo7jwtwYOjtPCHAgaG3M0eAA0Nv50kBDgy9nbkCHBh6O08JcGDo7cwT4MDQ23lagANDb2e+AAeG3s4zAhwYejvPCnBg6O08J8CBobezQIADQ29noQAHht7OIgEODL2d5wU4MPR2FgtwYOjtvCDAgaG3s0SAA0Nv50UBDgy9naUCHBh6Oy8JcGDo7SwT4MDQ23lZgANDb+cVAQ4MvZ1XBTgw9HaWC3Bg6O28JsCBobezQoADQ2/ndQEODL2dNwQ4MPR23hTgwNDbWSnAgaG3s0qAA0NvZ7UAB4bezlsCHBh6O2sEODD0dt4W4MDQ21krwIGht/OOAAeG3s46AQ4MvZ13BTgw9HbWC3Bg6O28J8CBobezQYADQ2/nfQEODL2djQIcGHo7HwhwYOjtfCjAgaG385GBAwQ6qkX26e1AMwF6AZgrj3nimCON+cGYG4t5oZgTifmAmAuHeWCYA4X5P5j7gnkfmPOA8f4Y645x3hjjjPG9GNuKcZ0Y04jxfBjLhnFcGMOE8TsYu4JxGxizgO/1+FaN77T4Ronvc/g2he8y+CaB9/F4F433sHgHifdvePeE9y5454DnbTxr4jkLzxiIrxFbIq5CTIH7Ke4l6EfRh6D9oO6AW/Zm1cEZWChi1tuBToc1nymGPDYZ20M1n+OxSDC7kv+IBbqMo4eyySEPbFa9nY+D5xOW3k5+/GPlg7oI25OvS+XvZl792mes7broZkL9+kSAA0NvZ4sAB4bezqcCHBh6O58JcGDo7XwuwIGht7NVgANDb+cLAQ4MvZ0vBTgw9Ha+EuDA0NvZJsCBobfztQAHht7OdgEODL2dbwQ4MPR2vhXgwNDb+U6AA0NvZ4cAB4bezk4BDgy9ne8FODD0dn4Q4MDQ2/lRgANDb+cnAQ4MvZ1dAhwYejs/C3Bg6O38IsCBobfzqwAHht7ObgEODL2d3wQ4MPR2fhfgwNDb+UOAA0NvZ48AB4bezp8CHBh6O3sFODD0diJF/u9zYOjtRAU4MPR28glwYOjtZAhwYOjt5BfgwNDbyRTgwNDbKSDAgaG3kyXAgaG3U1CAA0Nvp5AAB4bezgECHBh6OwcKcGDo7RQW4MDQ2ykiwIGht1NUgANDb6eYAAeG3s5BAhwYejvFBTgw9HYOFuDA0NspIcCBobdTUoADQ2+nlAAHht7OIQIcGHo7hwpwYOjtHCbAgaG3c7gAB4bezhECHBh6O0cKcGDo7RwlwIGht3O0AAeG3s4xAhwYejulBTgw9HZiBg7QFDk1sk9vB5oJ0AvAXHnME8ccacwPxtxYzAvFnEjMB8RcOMwDwxwozP/B3BfM+8CcB4z3x1h3jPPGGGeM78XYVozrxJhGjOfDWDaM48IYJozfwdgVjNvAmAV8r8e3anynxTdKfJ/Dtyl8l8E3CbyPx7tovIfFO0i8f8O7J7x3wTsHPG/jWRPPWXjGQHyN2BJxFWIK3E9xL0E/ij4E7eevulNkHxerDk5F/GPU2/nEQW/nE0MeZYzt4VSf47FIMLuS/4gFuoyjh2LhkLhZ9XaODZ5PWHo7mfjHygd1EbYnX5fK3+N49WufsbbroscVCT+P4wU4MPR2ygpwYOjtnCDAgaG3U06AA0Nvp7wAB4beTgUBDgy9nRMFODD0dioKcGDo7ZwkwIGht1NJgANDb+dkAQ4MvZ3KAhwYejtVBDgw9HaqCnBg6O2cIsCBobdTTYADQ2/nVAEODL2d6gIcGHo7pwlwYOjtnC7AgaG3c4YAB4beTg0BDgy9nTMFODD0dmoKcGDo7ZwlwIGht1NLgANDb+dsAQ4MvZ3aAhwYejvnCHBg6O3UEeDA0Ns5V4ADQ2+nrgAHht7OeQIcGHo79QQ4MPR2zhfgwNDbqS/AgaG300CAA0Nvp6EAB4bezgUCHBh6O40EODD0di4U4MDQ22kswIGht3ORAAeG3k4TAQ4MvZ2LBTgw9HaaCnBg6O1cIsCBobfTTIADQ2/nUgEODL2d5gIcGHo7lwlwYOjtXC7AgaG300KAA0Nv5woBDgy9nSsFODD0dq4S4MDQ22kpwIGht9NKgANDb6e1AAeG3k4bAQ4MvZ22AhwYejvtBDgw9HbaC3Bg6O10EODA0NvpaNTbqR7Zp7cDzQToBWCuPOaJY4405gdjbizmhWJOJOYDYi4c5oFhDhTm/2DuC+Z9YM4DxvtjrDvGeWOMM8b3YmwrxnViTCPG82EsG8ZxYQwTxu9g7ArGbWDMAr7X41s1vtPiGyW+z+HbFL7L4JsE3sfjXTTew+IdJN6/4d0T3rvgnQOet/GsiecsPGMgvkZsibgKMQXup7iXoB9FH4L2g7oDbtmbVQcHmiUZRr0d6HRY80nU9kiVRydje6juczwWCWZX8h+xQJdx9FA6OeSBzaq30zl4PmHp7RTAP1Y+qIuwPfm6VP524dWvfcbarot2IdSvq415mNu8d88oG/y+ET3BO7dcQXt5dhUoT4ZuUDcBDgzdoGsEODB0g7oLcGDoBvUQ4MDQDeopwIGhG9RLgANDN6i3AAeGblAfAQ4M3aC+AhwYukH9BDgwdIP6C3Bg6AZdK8CBoRs0QIADQzfoOgEODN2ggQIcGLpBgwQ4MHSDrhfgwNANukGAA0M36EYBDgzdoMECHBi6QTcJcGDoBg0R4MDQDRoqwIGhGzRMgANDN+hmAQ4M3aDhAhwYukG3CHBg6AaNEODA0A26VYADQzdopAAHhm7QbQIcGLpBowQ4MHSDbhfgwNANGi3AgaEbdIcAB4Zu0BgBDgzdoDsFODB0g+4S4MDQDRorwIGhGzROgANDN2i8AAeGbtDdAhwYukETBDgwdIPuEeDA0A2aKMCBoRt0rwAHhm7QJAEODN2g+wQ4MHSDJgtwYOgG3S/AgaEbNEWAA0M36AEBDgzdoAcFODB0g6YKcGDoBk0T4MDQDZouwIGhG/SQAAeGbtAMAQ4M3aCHBTgwdINmCnBg6AY9IsCBoRs0S4ADQzfoUQEODN2g2QYO0EY5LbJPNwiaCdALwFx5zBPHHGnMD8bcWMwLxZxIzAfEXDjMA8McKMz/wdwXzPvAnAeM98dYd4zzxhhnjO/F2FaM68SYRoznw1g2jOPCGCaM38HYFYzbwJgFfK/Ht2p8p8U3Snyfw7cpfJfBNwm8j8e7aLyHxTtIvH/Duye8d8E7Bzxv41kTz1l4xkB8jdgScRViCtxPcS9BP4o+BO0HdQfcsrdkbY8gOkAG/ZC/tFqg05GcT6rrEvNIZdNjRWzt4TSf47FIMLuS/4gFuoyj6/KYQx7YrLpBjwfPJyzdoCz8Y+WDugjbk69L5e8TvPq1z1jbddEnCPVrjgAHht7OkwIcGHo7cwU4MPR2nhLgwNDbmSfAgaG387QAB4beznwBDgy9nWcEODD0dp4V4MDQ23lOgANDb2eBAAeG3s5CAQ4MvZ1FAhwYejvPC3Bg6O0sFuDA0Nt5QYADQ29niQAHht7OiwIcGHo7SwU4MPR2XhLgwNDbWSbAgaG387IAB4bezisCHBh6O68KcGDo7SwX4MDQ23lNgANDb2eFAAeG3s7rAhwYejtvCHBg6O28KcCBobezUoADQ29nlQAHht7OagEODL2dtwQ4MPR21ghwYOjtvC3AgaG3s1aAA0Nv5x0BDgy9nXUCHBh6O+8KcGDo7awX4MDQ23lPgANDb2eDAAeG3s77AhwYejsbBTgw9HY+EODA0Nv5UIADQ2/nIwEODL2dTQIcGHo7HwtwYOjtbBbgwNDb+USAA0NvZ4sAB4bezqcCHBh6O58JcGDo7XwuwIGht7NVgANDb+cLAQ4MvZ0vBTgw9Ha+EuDA0NvZJsCBobfztQAHht7OdgEODL2dbwQ4MPR2vjVwgKbI6ZF9ejvQTIBeAObKY5445khjfjDmxmJeKOZEYj4g5sJhHhjmQGH+D+a+YN4H5jxgvD/GumOcN8Y4Y3wvxrZiXCfGNGI8H8ayYRwXxjBh/A7GrmDcBsYs4Hs9vlXjOy2+UeL7HL5N4bsMvkngfTzeReM9LN5B4v0b3j3hvQveOeB5G8+aeM7CMwbia8SWiKsQU+B+insJ+lH0IWg/qDvglr1ZdXCgWZKv8L7zg+jzQKfDmk+itkeqPL4ztofTfY7HIsHsSv4jFugyjh7Kdw55YLPq7ewInk/UoLcTNejtRP/5J2Kru7A9+bpU/u40cMVvZ8T3fte56FsFPff7IjZ+2Zu1/H9If/n/fUEkp92pTs/uu1z6vOxzU7H50bGuJF5nte94715bPvj9NnpC/HxrO/jJ2L+4+FHB6EcFBz928e4X+4y1XUfRjfpZgANDN+oXAQ4M3ahfBTgwdKN2C3Bg6Eb9JsCBoRv1uwAHhm7UHwIcGLpRewQ4MHSj/hTgwNCN2ivAgaEbFSn6f58DQzcqKsCBoRuVT4ADQzcqQ4ADQzcqvwAHhm5UpgAHhm5UAQEODN2oLAEODN2oggIcGLpRhQQ4MHSjDhDgwNCNOlCAA0M3qrAAB4ZuVBEBDgzdqKICHBi6UcUEODB0ow4S4MDQjSouwIGhG3WwAAeGblQJAQ4M3aiSAhwYulGlBDgwdKMOEeDA0I06VIADQzfqMAEODN2owwU4MHSjjhDgwNCNOlKAA0M36igBDgzdqKMFODB0o44R4MDQjSotwIGhGxUT4MDQjSojwIGhG3WsAAeGbtRxAhwYulHHC3Bg6EaVFeDA0I06QYADQzeqnAAHhm5UeQEODN2oCgIcGLpRJwpwYOhGVRTgwNCNOkmAA0M3qpIAB4Zu1MkCHBi6UZUFODB0o6oIcGDoRlUV4MDQjTpFgANDN6qaAAeGbtSpAhwYulHVi9rysP4+9EJ2OujMLC4Trl3Qh/mhiF2D5rTgvKJh+wDNj0jhf2vWpLru+ILB/T3d4O90g7/5vQTprajfD8X3sUiwfKsFPzdHfmcUzUWGuNh6XY2iwcG72lWj6L4DsUjwzaVh/+jQsF8MuVF0LfK3+JPVrqVGu7I3q2DUmYYGZWAVNdgf/ecfg92nRv6uW8kdZqq8TjXkUTPkmxHY1yxq9/0sg1347WwhK7/rrDecmoY+o1ZRWx3I3qx1+Oz01+G/NhfxMoNw119Bwk8OfUntouH7scvoxy4HP84JuT3CrtOK2ttEnRCDMJeysARJ8Pl0hz7oXENZILgqFN//y4CkfFPZawmucpNP1Qgnn7NzWadTPiBE/u5PrfUow3DuaRE7q2jyH7FAl0WiNUMGVj3y903OCsxyY6xrbDyIofP5ZWq0MWij3bt37yd+x2OR1Hngn0Rbz4s/ANQrGskZjZwX73USj9XzMdD6OHlusIIY7xVE9DxDodUzwrNWPFSg8xyfllzkPNseaHu0r+wg53l+0fD9aGf0o4qDH/UJfrQ3+lHVwY8GBD86GP04xcGPhgQ/Ohr9qObgxwUhR7Two9OBdrsaEezq7GDXhQS7ujjY1Zhg19UOdl1EsKurg11NCHZ1c7DrYoJd1zjY1ZRgV3cHuy4h2NXDwa5mBLt6Oth1KcGuXg52NSfY1dvBrssIdvVxsOtygl19HexqQbCrn4NdVxDs6u9g15UEu651sOsqgl0DHOxqSbDrOge7WhHsGuhgV2uCXYMc7GpDsOt6B7vaEuy6wcGudgS7bnSwqz3BrsEOdnUg2HWTg10dCXYNcbCrE8GuoQ52dSbYNczBri4Eu252sOtqgl3DHezqSrDrFge7uhHsGuFg1zUEu251sKs7wa6RDnb1INh1m4NdPQl2jXKwqxfBrtsd7OpNsGu0g119CHbd4WBXX4JdYxzs6kew604Hu/oT7LrLwa5rCXaNdbBrAMGucQ52XUewa7yDXQMJdt3tYNcggl0THOy6nmDXPQ523UCwa6KDXTcS7LrXwa7BBLsmOdh1E8Gu+xzsGkKwa7KDXUMJdt3vYNcwgl1THOy6mWDXAw52DSfY9aCDXbcQ7JrqYNcIgl3THOy6lWDXdAe7RhLsesjBrtsIds1wsGsUwa6HHey6nWDXTAe7RhPsesTBrjsIds1ysGsMwa5HHey6k2DXbAe77iLY9ZiDXWMJdj3uYNc4gl1PONg1nmDXHAe77ibY9aSDXRMIds11sOsegl1POdg1kWDXPAe77iXY9bSDXZMIds13sOs+gl3PONg1mWDXsw523U+w6zkHu6YQ7FrgYNcDBLsWOtj1IMGuRQ52TSXY9byDXdMIdi12sGs6wa4XHOx6iGDXEge7ZhDsetHBrocJdi11sGsmwa6XHOx6hGDXMge7ZhHsetnBrkcJdr3iYNdsgl2vOtj1GMGu5Q52PU6w6zUHu54g2LXCwa45BLted7DrSYJdbzjYNZdg15sOdj1FsGulg13zCHatcrDraYJdqx3smk+w6y0Hu54h2LXGwa5nCXa97WDXcwS71jrYtYBg1zsOdi0k2LXOwa5FBLvedbDreYJd6x3sWkyw6z0Hu14g2LXBwa4lBLved7DrRYJdGx3sWkqw6wMHu14i2PWhg13LCHZ95GDXywS7NjnY9QrBro8d7HqVYNdmB7uWE+z6xMGu1wh2bXGwawXBrk8d7HqdYNdnDna9QbDrcwe73iTYtdXBrpUEu75wsGsVwa4vHexaTbDrKwe73iLYtc3BrjUEu752sOttgl3bHexaS7DrGwe73iHY9a2DXesIdn3nYNe7BLt2ONi1nmDXTge73iPY9b2DXRsIdv3gYNf7BLt+dLBrI8Gunxzs+oBg1y4Huz4k2PWzg10fEez6xcGuTQS7fnWw62OCXbsd7NpMsOs3B7s+Idj1u4NdWwh2/eFg16cEu/Y42PUZwa4/Hez6nGDXXge7thrswnoIZ3hpWvy/obEPfXpou0MXHZri0O+GVjZ0qaEBDb1laBtDRxiavdDHhRYtdF+hsQo9U2iHQqcTmpjQn4TWI3QVoWEIvUBo80EHD5pz0HeDlhp0y6ARBj0uaF9BZwqaTtBPglYRdIGgwQO9G2jLQMcFminQJ4EWCHQ3oHEBPQloN0AnAZoEmP+PufaY14455JivjbnRmIeMOb+YX4u5rJg3ijmamA+JuYeY54c5dZi/hrlimJeFOVCYb4S5PZhHgzkrmB+CuRiY94A5BhjPj7HzGKeOMeEYf42xzhhXjDG8GC+LsakYB4oxlxjfiLGEGLeHMXIYj4axXxhnhTFNGD+EsToYF4MxKBjvgbEVGMeAMQP4Po9v4fjujG+8+J6Kb5f4Tohvcvj+hW9N+K6Dbyj4XoFvA3gPj3feeL+Md7l4b4p3lHgfiHdveM+Fd0p4f4N3JXgvgXcAeN7Gsy2eI/HMhucjPIsg7keMjXgWsSPiNMREiD9wr8d9Ffcw3C/QN6MfRJ+D9o22hHrr2FYysd4F1uqwtpUvigZvK/nibSV5i0Vsm7UfsNjomseXxjzMK0lFci5Uk6pcshfOsZbnV0VtfV+NyP/6vv/1ff+3+j6XVRQN7fevxaXQTqxtODGPVDZtK2rrV2v4HI9FgtmV/Ecs0GWcfnWbMQ/X+16YC4x9zSvLfQbarot+TSjL7QIcChYIP49vBDjULBh+Ht8KcKhF4PCdAIfaBA47BDjUIXDYKcChLoHD9wIc6hE4/CDAoT6Bw48CHBoSOPwkwKERgcMuAQ6NCRx+FuDQhMDhFwEOTQkcfhXg0IzAYbcAh+YEDr8JcNiUFX4evwtwaEGoD38IcLiSwGGPAIeWBA5/CnBoTeCwV4BDWwKHSLH/+xzaEzhEBTh0JHDIJ8ChM4FDhgCHqwkc8gtw6EbgkCnAoTuBQwEBDj0JHLIEOPQmcCgowKEvgUMhAQ79CRwOEOAwgMDhQAEOAwkcCgtwuJ7AoYgAh9L5w8+jqACHwYT6UEyAwxACh4MEOAwjcCguwGE4gcPBAhxGEDiUEOAwksChpACHUQQOpQQ4jCZwOESAwxgCh0MFOKzKCD+PwwQ4jCXUh8MFOIwncDhCgMMEAocjBThMJHA4SoDDJAKHowU4TCZwOEaAwxQCh9ICHJYQxonFBDhMJdSHMgIcphM4HCvAYQaBw3ECHGYSOBwvwGEWgUNZAQ6zCRxOEODwOIFDOQEOcwgcygtwmEvgUEGAwzwChxMFOMwncKgowOFZAoeTBDgsIHCoJMBhEYHDyQIcFhM4VFZ4/0DgUEWAw1ICh6oCHJYROJwiwOEVAodqAhyWEzicKsBhBYFDdQEObxA4nCbAYSWBw+kCHFYTOJwhwGENgUMNAQ5rCRzOFOCwjsChpgCH9QQOZwlw2EDgUEuAw0YCh7MFOHxI4FBbgMMmAodzBDhsJnCoI8BhC4HDuQIcPiNwqCvAYSuBw3kCHL4kcKgnwGEbgcP5Ahy2EzjUF+DwLYFDAwEOOwgcGgpw+J7A4QIBDj8SODQS4LCLwOFCAQ6/EDg0FuCwm8DhIgEOvxM4NBHgsIfA4WIBDnsJHJoKcIgWCj+PSwQ4ZBA4NBPgkEngcKkAhywCh+YCHAoROFwmwOFAAofLBTgUIXBoIcChGIHDFQIcihM4XCnAoQSBw1UCHEoROLQU4HAogUMrAQ6HEzi0FuBwJIFDGwEORxM4tFXQZSVwaCfAoQyBQ3sBDscROHQQ4FCWwKGjAIdyBA6dBDhUIHDoLMChIoFDFwEOlQgcrhbgUJnAoasAh6oEDt0EOFQjcLhGgEN1AofuAhxOJ3DoIcChBoFDTwEONQkceglwqEXg0FuAQ20Chz4CHOoQOPQV4FCXwKGfAId6BA79BTjUJ3C4VoBDQwKHAQIcGhE4XCfAoTGBw0ABDk0IHAYJcGhK4HC9AIdmBA43CHBoTuBwowCHywkcBgtwuILA4SYBDlcROAwR4NCKwGGoAIc2BA7DBDi0I3C4WYBDBwKH4QIcOhE43CLAoQuBwwgBDl0JHG4V4HANgcNIAQ49CBxuE+DQi8BhlACHPgQOtwtw6EfgMNrAIcNLZ3ppWvy/vykaiXzrpe+8tMNLO730vZd+8NKPXvrJS7u89LOXfvHSr17a7aXfvPS7l/7w0h4v/emlvV6KeLZEvZTPSxleyu+lTC8V8FKWlwp6qZCXDvDSgV4q7KUiXirqpWJeOshLWJ8ea7NjXXKsyY31qLEWM9Yhxhq8WH8Wa69i3VGsuYn1JrHW4l/rDHoJ68thbTWsK4Y1tbCeFNZSwjpCWEMH68dg7RSsG4I1M7BeBNZKwDoB0MiHPjy00aELDk1s6EFDCxk6wNDAhf4rtE+h+wnNS+g9QusQOn/QuIO+G7TNoOsFTSvoOUHLCDo+0LCBfgu0S6DbAc0K6DVAqwDz9DFHHfOzMTcZ83IxJxXzMTEXEfPwMAcN868w9wjzbjDnBPMtMNcA4+wxxhzjqzG2GONqMaYU4ykxlhDj6DCGDOOnMHYI42YwZgTjJTBWAN/J8Y0Y30fxbRDfxfBNCN9D8C0A78HxDhjvP/HuD++98M4H7zvwrI/nXDzj4fkGsT3iWsR0iGdwL8d9DH04+i+0XdTb7C2fsc5X8/6pWXTf+VU6XtR3S9VpFRZeXO+5YcNatCpf7asGgxb1Hld3y667d8bP3V7Uns92Qx53FLP1R2f6HI9FgtmV/Ecs0GWR6NdFw++PLBwcfj8TZXmuvSzzWerLGF5Z/rNZOY8pFn4ed+ayLFNxxv3otPg+8bpU2WQYzj3NYM9dAuVesED4eYwV4FCToJUyToBDLQKH8QIcahM43C3AoQ6BwwQBDnUJHO4R4FCPwGGiAIf6BA73CnBoSOAwSYBDIwKH+wQ4NCZwmCzAoQmBw/0CHJoSOEwR4NCMwOEBAQ7NCRweFOCwKSv8PKYKcGhBqA/TBDhcSeAwXYBDSwKHhwQ4tCZwmCHAoS2Bw8MCHNoTOMwU4NCRwOERAQ6dCRxmCXC4msDhUQEO3QgcZgtw6E7g8JgAh54EDo8LcOhN4PCEAIe+BA5zBDj0J3B4UoDDAAKHuQIcBhI4PCXA4XoCh3kCHErnDz+PpwU4DCbUh/kCHIYQODwjwGEYgcOzAhyGEzg8J8BhBIHDAgEOIwkcFgpwGEXgsEiAw2gCh+cVxpMTOCwW4LAqI/w8XhDgMJZQH5YIcBhP4PCiAIcJBA5LBThMJHB4SYDDJAKHZQIcJhM4vCzAYQqBwysCHJYQxom9KsBhKqE+LBfgMJ3A4TUBDjMIHFYIcJhJ4PC6AIdZBA5vCHCYTeDwpgCHxwkcVgpwmEPgsEqAw1wCh9UCHOYROLwlwGE+gcMaAQ7PEji8LcBhAYHDWgEOiwgc3hHgsJjAYZ3C+wcCh3cFOCwlcFgvwGEZgcN7AhxeIXDYIMBhOYHD+wIcVhA4bBTg8AaBwwcCHFYSOHwowGE1gcNHAhzWEDhsEuCwlsDhYwEO6wgcNgtwWE/g8IkAhw0EDlsEOGwkcPhUgMOHBA6fKejkEDh8LsBhM4HDVgEOWwgcvhDg8BmBw5cCHLYSOHwlwOFLAodtAhy2ETh8LcBhO4HDdgEO3xI4fCPAYQeBw7cCHL4ncPhOgMOPBA47BDjsInDYKcDhFwKH7wU47CZw+EGAw+8EDj8KcNhD4PCTAIe9BA67BDhECWsw/izAIYPA4RcBDpkEDr8KcMgicNgtwKEQgcNvAhwOJHD4XYBDEQKHPwQ4FCNw2CPAoTiBw58CHEoQOOwV4FCKwCFy0P99DocSOEQFOBxO4JBPgMORBA4ZAhyOJnDIL8ChNIFDpgCHMgQOBQQ4HEfgkCXAoSyBQ0EBDuUIHAoJcKhA4HCAAIeKBA4HCnCoROBQWIBDZQKHIgIcqhI4FBXgUI3AoZgAh+oEDgcJcDidwKG4AIcaBA4HC3CoSeBQQoBDLQKHkgIcahM4lBLgUIfA4RABDnUJHA4V4FCPwOEwAQ71CRwOF+DQkMDhCAEOjQgcjhTg0JjA4SgBDk0IHI4W4NCUwOEYAQ7NCBxKC3BoTuAQE+BwOYFDGQEOVxA4HCvA4SoCh+MEOLQicDhegEMbAoeyAhzaETicIMChA4FDOQEOnQgcygtw6ELgUEGAQ1cChxMFOFxD4FBRgEMPAoeTBDj0InCoJMChD4HDyQIc+hE4VDZwyPBSTS9Ni//32GKRyDgvjffS3V6a4KV7vDTRS/d6aZKX7vPSZC/d76UpXnrASw96aaqXpnlpupce8tIMLz3spZleesRLs7z0qJdme+kxLz3upSe8NMdLT3pprpee8tI8Lz3tpfleesZLWJ8ea7NjXXKsyY31qLEWM9Yhxhq8WH8Wa69i3VGsuYn1JrHWItYZxBp7WF8Oa6thXTGsqYX1pLCWEtYRwho6WD8Ga6dg3RCsmYH1IrBWAtYJgEY+9OGhjQ5dcGhiQw8aWsjQAYYGLvRfoX0K3U9oXkLvEVqH0PmDxh303aBtBl0vaFpBzwlaRtDxgYYN9FugXQLdDmhWQK8BWgWYp4856pifjbnJmJeLOamYj4m5iJiHhzlomH+FuUeYd4M5J5hvgbkGGGePMeYYX42xxRhXizGlGE+JsYQYR4cxZBg/hbFDGDeDMSMYL4GxAvhOjm/E+D6Kb4P4LoZvQvgegm8BeA+Od8B4/4l3f3+99/IS3nfgWR/PuXjGw/MNYnvEtYjpEM/gXo77GPpw9F9ou6i32Vu+pDpfpeNFfbdUnVZh4cX1nhs2rEWr8tW+ajBoUe9xdbfsunsn6nDRSOTO4POOojj/rmL/zifVdYl5pLKpirE/qulzPBYJZlfyH7FAl0WiY4qF3x9ZODj8fibK8tyi5rLMwHXZ56Yqy6q8svxns3KuelD4eZwiwKFggfDzqCbAoSZBO+RUAQ61CByqC3CoTeBwmgCHOgQOpwtwqEvgcIYAh3oEDjUEONQncDhTgENDAoeaAhwaETicJcChMYFDLQEOTQgczhbg0JTAobYAh2YEDucIcGhO4FBHgMOmrPDzOFeAQwtCfagrwOFKAofzBDi0JHCoJ8ChNYHD+QIc2hI41Bfg0J7AoYEAh44EDg0FOHQmcLhAgMPVBA6NBDh0I3C4UIBDdwKHxgIcehI4XCTAoTeBQxMBDn0JHC4W4NCfwKGpAIcBBA6XCHAYSODQTIDD9QQOlwpwKJ0//DyaC3AYTKgPlwlwGELgcLkAh2EEDi0EOAwncLhCgMMIAocrBTiMJHC4SoDDKAKHlgIcRhM4tBLgMIbAobUAh1UZ4efRRoDDWEJ9aCvAYTyBQzsBDhMIHNoLcJhI4NBBgMMkAoeOAhwmEzh0EuAwhcChswCHJYRxYl0EOEwl1IerBThMJ3DoKsBhBoFDNwEOMwkcrhHgMIvAobsAh9kEDj0EODxO4NBTgMMcAodeAhzmEjj0FuAwj8ChjwCH+QQOfQU4PEvg0E+AwwICh/4CHBYROFwrwGExgcMAhfcPBA7XCXBYSuAwUIDDMgKHQQIcXiFwuF6Aw3IChxsEOKwgcLhRgMMbBA6DBTisJHC4SYDDagKHIQIc1hA4DBXgsJbAYZgAh3UEDjcLcFhP4DBcgMMGAodbBDhsJHAYIcDhQwKHWxV0cggcRgpw2EzgcJsAhy0EDqMEOHxG4HC7AIetBA6jBTh8SeBwhwCHbQQOYwQ4bCdwuFOAw7cEDncJcNhB4DBWgMP3BA7jBDj8SOAwXoDDLgKHuwU4/ELgMEGAw24Ch3sEOPxO4DBRgMMeAod7BTjsJXCYJMAhSliT8D4BDhkEDpMFOGQSONwvwCGLwGGKAIdCBA4PCHA4kMDhQQEORQgcpgpwKEbgME2AQ3ECh+kCHEoQODwkwKEUgcMMAQ6HEjg8LMDhcAKHmQIcjiRweESAw9EEDrMUdFkJHB4V4FCGwGG2AIfjCBweE+BQlsDhcQEO5QgcnhDgUIHAYY4Ah4oEDk8KcKhE4DBXgENlAoenBDhUJXCYJ8ChGoHD0wIcqhM4zBfgcDqBwzMCHGoQODwrwKEmgcNzAhxqETgsEOBQm8BhoQCHOgQOiwQ41CVweF6AQz0Ch8UCHOoTOLwgwKEhgcMSAQ6NCBxeFODQmMBhqQCHJgQOLwlwaErgsEyAQzMCh5cFODQncHhFgMPlBA6vCnC4gsBhuQCHqwgcXhPg0IrAYYUAhzYEDq8LcGhH4PCGAIcOBA5vCnDoROCwUoBDFwKHVQIcuhI4rBbgcA2Bw1sCHHoQOKwR4NCLwOFtAQ59CBzWCnDoR+DwjoFDhpfO8tK0+H9X86491UvVvXSal0730hlequGlM71U00tneamWl872Um0vneOlOl4610t1vXSel+p56Xwv1fdSAy819NIFXmrkpQu91NhLF3mpiZcu9lJTL13ipWZeutRLzb10mZcu9xLWp8fa7FiXHGtyYz1qrMWMdYixBi/Wn8Xaq1h3FGtuYr1JrLWIdQaxxh7Wl8PaalhXDGtqYT0prKWEdYSwhg7Wj8HaKVg3BGtmYL0IrJWAdQKgkQ99eGijQxccmtjQg4YWMnSAoYEL/Vdon0L3E5qX0HuE1iF0/qBxB303aJtB1wuaVtBzgpYRdHygYQP9FmiXQLcDmhXQa4BWAebpY4465mdjbjLm5WJOKuZjYi4i5uFhDhrmX2HuEebdYM4J5ltgrgHG2WOMOcZXY2wxxtViTCnGU2IsIcbRYQwZxk9h7BDGzWDMCMZLYKwAvpPjGzG+j+LbIL6L4ZsQvofgWwDeg+MdMN5/4t0f3nvhnQ/ed+BZH8+5eMbD8w1ie8S1iOkQz+BejvsY+nD0X2i7qLfZWz5jna/q/VOz6L7zq3S8qO+WqtMqLLy43nPDhrVoVb7aVw0GLeo9ru6WXXfvjJ97ykH2fHBN0DzWHWTrj87yOR6LBLMr+Y9YoMs8bgeF3x+tM+Zh/P1MlOW5Rc1lmd9SX97lleU/m5Xzu4SyXC/AoWCB8PN4T4BDTYJ2yAYBDrUIHN4X4FCbwGGjAIc6BA4fCHCoS+DwoQCHegQOHwlwqE/gsEmAQ0MCh48FODQicNgswKExgcMnAhyaEDhsEeDQlMDhUwEOzQgcPhPg0JzA4XMBDpuyws9jqwCHFoT68IUAhysJHL4U4NCSwOErAQ6tCRy2CXBoS+DwtQCH9gQO2wU4dCRw+EaAQ2cCh28FOFxN4PCdAIduBA47BDh0J3DYKcChJ4HD9wIcehM4/CDAoS+Bw48CHPoTOPwkwGEAgcMuAQ4DCRx+FuBwPYHDLwIcSucPP49fBTgMJtSH3QIchhA4/CbAYRiBw+8CHIYTOPwhwGEEgcMeAQ4jCRz+FOAwisBhrwCH0QQOkeL/9zmMIXCICnBYlRF+HvkEOIwl1IcMAQ7jCRzyC3CYQOCQKcBhIoFDAQEOkwgcsgQ4TCZwKCjAYQqBQyEBDksI48QOEOAwlVAfDhTgMJ3AobAAhxkEDkUEOMwkcCgqwGEWgUMxAQ6zCRwOEuDwOIFDcQEOcwgcDhbgMJfAoYQAh3kEDiUFOMwncCglwOFZAodDBDgsIHA4VIDDIgKHwwQ4LCZwOFzh/QOBwxECHJYSOBwpwGEZgcNRAhxeIXA4WoDDcgKHYwQ4rCBwKC3A4Q0Ch5gAh5UEDmUEOKwmcDhWgMMaAofjBDisJXA4XoDDOgKHsgIc1hM4nCDAYQOBQzkBDhsJHMoLcPiQwKGCAIdNBA4nCnDYTOBQUYDDFgKHkwQ4fEbgUEmAw1YCh5MFOHxJ4FBZgMM2AocqAhy2EzhUFeDwLYHDKQIcdhA4VBPg8D2Bw6kCHH4kcKguwGEXgcNpAhx+IXA4XYDDbgKHMwQ4/E7gUEOAwx4ChzMFOOwlcKgpwCFKWJPwLAEOGQQOtQQ4ZBI4nC3AIYvAobYAh0IEDucIcDiQwKGOAIciBA7nCnAoRuBQV4BDcQKH8wQ4lCBwqCfAoRSBw/kCHA4lcKgvwOFwAocGAhyOJHBoKMDhaAKHCwQ4lCZwaCTAoQyBw4UCHI4jcGgswKEsgcNFAhzKETg0EeBQgcDhYgEOFQkcmgpwqETgcIkAh8oEDs0EOFQlcLhUgEM1AofmAhyqEzhcJsDhdAKHywU41CBwaCHAoSaBwxUCHGoROFwpwKE2gcNVAhzqEDi0FOBQl8ChlQCHegQOrQU41CdwaCPAoSGBQ1sBDo0IHNoJcGhM4NBegEMTAocOAhyaEjh0FODQjMChkwCH5gQOnQU4XE7g0EWAwxUEDlcLcLiKwKGrAIdWBA7dBDi0IXC4RoBDOwKH7gIcOhA49BDg0InAoacAhy4EDr0EOHQlcOgtwOEaAoc+Ahx6EDj0FeDQi8ChnwCHPgQO/QU49CNwuNbAIcNLtbw0Lf7f7x0UiWzw0vte2uilD7z0oZc+8tImL33spc1e+sRLW7z0qZc+89LnXtrqpS+89KWXvvLSNi997aXtXvrGS9966Tsv7fDSTi9976UfvPSjl37y0i4v/eylX7z0q5d2e+k3L2F9eqzNjnXJsSY31qPGWsxYhxhr8GL9Way9inVHseYm1pvEWotYZxBr7GF9OaythnXFsKYW1pPCWkpYRwhr6GD9GKydgnVDsGYG1ovAWglYJwAa+dCHhzY6dMGhif2XHrSXoAMMDVzov0L7FLqf0LyE3iO0DqHzB4076LtB2wy6XtC0gp4TtIyg4wMNG+i3QLsEuh3QrIBeA7QKME8fc9QxPxtzkzEvF3NSMR8TcxExDw9z0DD/CnOPMO8Gc04w3wJzDTDOHmPMMb4aY4sxrhZjSjGeEmMJMY4OY8gwfgpjhzBuBmNGMF4CYwXwnRzfiPF9FN8G8V0M34TwPQTfAvAeHO+A8f4T7/7w3gvvfPC+A8/6eM7FMx6ebxDbI65FTId4Bvdy3MfQh6P/QttFvc3e8hnrfM2iHpui+86v0vGivluqTquw8OJ6zw0b1qJV+WpfNRi0qPe4ult23b3T+/84f/1B9nzWHxQ8jwHG/qiWz/FYJJhdyX/EAl0Wib57UPj9kYWDy++jLM8t6lZnss9NVZbXGXyA/RnxffZ1uSzfHL9tuC5asED4eQzk1fN9mdqui9Yk6GgMEuBQi8DhegEOtQkcbhDgUIfA4UYBDnUJHAYLcKhH4HCTAIf6BA5DBDg0JHAYKsChEYHDMAEOjQkcbhbg0ITAYbgAh6YEDrcIcGhG4DBCgENzAodbBThsygo/j5ECHFoQ6sNtAhyuJHAYJcChJYHD7QIcWhM4jBbg0JbA4Q4BDu0JHMYIcOhI4HCnAIfOBA53CXC4msBhrACHbgQO4wQ4dCdwGC/AoSeBw90CHHoTOEwQ4NCXwOEeAQ79CRwmCnAYQOBwrwCHgQQOkwQ4XE/gcJ8Ah9L5w89jsgCHwYT6cL8AhyEEDlMEOAwjcHhAgMNwAocHBTiMIHCYKsBhJIHDNAEOowgcpgtwGE3g8JAAhzEEDjMEOKzKCD+PhwU4jCXUh5kCHMYTODwiwGECgcMsAQ4TCRweFeAwicBhtgCHyQQOjwlwmELg8LgAhyWEcWJPCHCYSqgPcwQ4TCdweFKAwwwCh7kCHGYSODwlwGEWgcM8AQ6zCRyeFuDwOIHDfAEOcwgcnhHgMJfA4VkBDvMIHJ4T4DCfwGGBAIdnCRwWCnBYQOCwSIDDIgKH5wU4LCZwWKzw/oHA4QUBDksJHJYIcFhG4PCiAIdXCByWCnBYTuDwkgCHFQQOywQ4vEHg8LIAh5UEDq8IcFhN4PCqAIc1BA7LBTisJXB4TYDDOgKHFQIc1hM4vC7AYQOBwxsCHDYSOLwpwOFDAoeVCjo5BA6rBDhsJnBYLcBhC4HDWwIcPiNwWCPAYSuBw9sCHL4kcFgrwGEbgcM7Ahy2EzisE+DwLYHDuwIcdhA4rBfg8D2Bw3sCHH4kcNggwGEXgcP7Ahx+IXDYKMBhN4HDBwIcfidw+FCAwx4Ch48EOOwlcNgkwCFKWJ/vYwEOGQQOmwU4ZBI4fCLAIYvAYYsAh0IEDp8KcDiQwOEzAQ5FCBw+F+BQjMBhqwCH4gQOXwhwKEHg8KUAh1IEDl8JcDiUwGGbAIfDCRy+FuBwJIHDdgEORxM4fKOgy0rg8K0AhzIEDt8JcDiOwGGHAIeyBA47BTiUI3D4XoBDBQKHHwQ4VCRw+FGAQyUCh58EOFQmcNglwKEqgcPPAhyqETj8IsChOoHDrwIcTidw2C3AoQaBw28CHGoSOPwuwKEWgcMfAhxqEzjsEeBQh8DhTwEOdQkc9gpwqEfgEDn4/z6H+gQOUQEODQkc8glwaETgkCHAoTGBQ34BDk0IHDIFODQlcCggwKEZgUOWAIfmBA4FBThcTuBQSIDDFQQOBwhwuIrA4UABDq0IHAoLcGhD4FBEgEM7AoeiAhw6EDgUE+DQicDhIAEOXQgcigtw6ErgcLAAh2sIHEoIcOhB4FBSgEMvAodSAhz6EDgcIsChH4HDoQfb8shn/P2aRSORc4sGP79W/PxkP6p0vKjvlqrTKiy8uN5zw4a1aFW+2lcNBi3qPa7ull137/T+/2FGP6ycTvX+qeHZlWG061TDuTWKBj/38OD+Rv/5JxL8murxPCK26yL5vXSAlzL9ftRoQ7WIvf675HNKhJNP1Uj4be0sY1s7u+i+A7GIfbMyuKuYrd/N3o6I18UjD96XpzlzQ6P567cz4vsj4tehchdNMsylkOoYC6mOsZD27t37q9/xWCR1fvgn0b+j4uCPPjiSE8pR8ZJIPHZ0AmBr4WSDsfb8m8uE2/PXcrTrE6Nd2Vv+4PmM9/KJHnVwcJuONtw1DFyjQX3NrphWlmi4RzncjbBZG2i0cCTyc5Hg5xfwzv++iN2nYw4O349fDH5kOfpRmuDHrwY/Cjr6ESP4sdvgRyFHP8oQ/PjN4McBjn4cS/Djd4MfBzr6cRzBjz8MfhR29ON4gh97DH4UcfSjbMhPivDjTwe7TiDYtdfBrnIEuyIO8VV5gl1RB7sqEOzK52DXiQS7MhzsqkiwK7+DXScR7Mp0sKsSwa4CDnadTLAry8GuygS7CjrYVYVgVyEHu6oS7DrAwa5TCHYd6GBXNYJdhR3sOpVgVxEHu6oT7CrqYNdpBLuKOdh1OsGugxzsOoNgV3EHu2oQ7DrYwa4zCXaVcLCrJsGukg52nUWwq5SDXbUIdh3iYNfZBLsOdbCrNsGuwxzsOodg1+EOdtUh2HWEg13nEuw60sGuugS7jnKw6zyCXUc72FWPYNcxDnadT7CrtINd9Ql2xRzsakCwq4yDXQ0Jdh3rYNcFBLuOc7CrEcGu4x3supBgV1kHuxoT7DrBwa6LCHaVc7CrCcGu8g52XUywq4KDXU0Jdp3oYNclBLsqOtjVjGDXSQ52XUqwq5KDXc0Jdp3sYNdlBLsqO9h1OcGuKg52tSDYVdXBrisIdp3iYNeVBLuqOdh1FcGuUx3sakmwq7qDXa0MdmFc6NleOif+3xjz9td4sYP/HqeEMT4YH4OxJRiXgTEQGG+Ab/v4jo5v1vg+jG+x+O6Jb4z4nodvZ/hOhW9C+P6Cbx34roB3+HhfjnfTeA+Md654v4l3iXhvh3dkeB+Fdz94z4J3Gnh/gGd1PBfjGRTPe3i2wnMMnhkQnyMWRtyJGA/xFGIXxAm4J+P+h3sN+nX0oeiv0DegHaLOo36hLFsd7M/Hwr51cPYFDeM3C1rHqlrrGsZvwnZrXWsT3N+/xhud7XM8FrFtVt8sNrrm0dbY5mpH/tfmktuceTxaJOcsmyBjlFFO1nzaGvJoZ2wPtX2OxyLB7Er+IxboMk57aOeQBzZrf9s+/f1t9J9/Irb+tr1Df9uBV7/2GWu7LtqBUL86CnAoWCD8PDoJcKhJWPW2swCHWgQOXQQ41CZwuFqAQx0Ch64CHOoSOHQT4FCPwOEaAQ71CRy6C3BoSODQQ4BDIwKHngIcGhM49BLg0ITAobcAh6YEDn0EODQjcOgrwKE5gUM/AQ6bssLPo78AhxaE+nCtAIcrCRwGCHBoSeBwnQCH1gQOAwU4tCVwGCTAoT2Bw/UCHDoSONwgwKEzgcONAhyuJnAYLMChG4HDTQIcuhM4DBHg0JPAYagAh94EDsMEOPQlcLhZgEN/AofhAhwGEDjcIsBhIIHDCAEO1xM43CrAoXT+8PMYKcBhMKE+3CbAYQiBwygBDsMIHG4X4DCcwGG0AIcRBA53CHAYSeAwRoDDKAKHOwU4jCZwuEuAwxgCh7ECHFZlhJ/HOAEOYwn1YbwAh/EEDncLcJhA4DBBgMNEAod7BDhMInCYKMBhMoHDvQIcphA4TBLgsIQwTuw+AQ5TCfVhsgCH6QQO9wtwmEHgMEWAw0wChwcEOMwicHhQgMNsAoepAhweJ3CYJsBhDoHDdAEOcwkcHhLgMI/AYYYAh/kEDg8bOEBT5Jx4wgbNBOgFYK485oljjjTmB2NuLOaFYk4k5gNiLhzmgWEOFOb/YO4L5n1gzgPG+2OsO8Z5Y4wzxvdibCvGdWJMI8bzYSwbxnFhDBPG72DsCsZtYMwCvtfjWzW+0+IbJb7P4dsUvsvgmwTex+NdNN7D4h0k3r/h3RPeu+CdA5638ayJ5yw8YyC+RmyJuAoxBe6nuJegH0UfgvaDugNu2ZtVBwerPVv1dqDTYc2noyGPmcb2cI7P8VgkmF3Jf8QCXcbRQ5npkAc2q97OI8HzCUtv56/qZOWDugjbk69L5e8sXv3aZ6ztuugsQv16VIADQ29ntgAHht7OYwIcGHo7jwtwYOjtPCHAgaG3M0eAA0Nv50kBDgy9nbkCHBh6O08JcGDo7cwT4MDQ23lagANDb2e+AAeG3s4zAhwYejvPCnBg6O08J8CBobezQIADQ29noQAHht7OIgEODL2d5wU4MPR2FgtwYOjtvCDAgaG3s0SAA0Nv50UBDgy9naUCHBh6Oy8JcGDo7SwT4MDQ23lZgANDb+cVAQ4MvZ1XBTgw9HaWC3Bg6O28JsCBobezQoADQ2/ndQEODL2dNwQ4MPR23hTgwNDbWSnAgaG3s0qAA0NvZ7UAB4bezlsCHBh6O2sEODD0dt4W4MDQ21krwIGht/OOAAeG3s46AQ4MvZ13BTgw9HbWC3Bg6O28J8CBobezQYADQ2/nfQEODL2djQIcGHo7HwhwYOjtfCjAgaG385EAB4beziYBDgy9nY8FODD0djYLcGDo7XwiwIGht7NFYT4vgcOnAhwYejufCXBg6O18LsCBobezVYADQ2/nCwEODL2dLwU4MPR2vjJwgKZIncg+FtBMgF4A5spjnjjmSGN+MObGYl4o5kRiPiDmwmEeGOZAYf4P5r5g3gfmPGC8P8a6Y5w3xjhjfC/GtmJcJ8Y0YjwfxrJhHBfGMGH8DsauYNwGxizgez2+VeM7Lb5R4vscvk3huwy+SeB9PN5F4z0s3kHi/RvePeG9C9454Hkbz5p4zsIzBuJrxJaIqxBT4H6Kewn6UfQhaD+oO+CWveUzMj8lYtfbgU6HNZ9HDXlsM7aHOj7HY5FgdiX/EQt0GUcPZZtDHtisejtfB88nLL2dv0y28kFdhO3J16Xydzuvfu0z1nZddDuhfn0jwIGht/OtAAeG3s53AhwYejs7BDgw9HZ2CnBg6O18L8CBobfzgwAHht7OjwIcGHo7PwlwYOjt7BLgwNDb+VmAA0Nv5xcBDgy9nV8FODD0dnYLcGDo7fwmwIGht/O7AAeG3s4fAhwYejt7BDgw9Hb+FODA0NvZK8CBobcTKfF/nwNDbycqwIGht5NPgANDbydDgANDbye/AAeG3k6mAAeG3k4BAQ4MvZ0sAQ4MvZ2CAhwYejuFBDgw9HYOEODA0Ns5UIADQ2+nsAAHht5OEQEODL2dogIcGHo7xQQ4MPR2DhLgwNDbKS7AgaG3c7AAB4beTgkBDgy9nZICHBh6O6UEODD0dg4R4MDQ2zlUgANDb+cwAQ4MvZ3DBTgw9HaOEODA0Ns5UoADQ2/nKAEODL2dowU4MPR2jhHgwNDbKS3AgaG3ExPgwNDbKSPAgaG3c6wAB4beznECHBh6O8cLcGDo7ZQV4MDQ2zlBgANDb6ecAAeG3k55AQ4MvZ0KAhwYejsnCnBg6O1UFODA0Ns5ycABAh3nRvbp7UAzAXoBmCuPeeKYI435wZgbi3mhmBOJ+YCYC4d5YJgDhfk/mPuCeR+Y84Dx/hjrjnHeGOOM8b0Y24pxnRjTiPF8GMuGcVwYw4TxOxi7gnEbGLOA7/X4Vo3vtPhGie9z+DaF7zL4JoH38XgXjfeweAeJ929494T3LnjngOftv541vYRnDMTXiC0RVyGmwP0U9xL0o+hD0H5Qd8Ate7Pq4NxVzK63842D3s43hjwqGdvDuT7HY5FgdiX/EQt0GUcPxcIhcbPq7ZwcPJ+w9Hby4x8rH9RF2J58XSp/K/Pq1z5jbddFK5cIP48qAhwYejtVBTgw9HZOEeDA0NupJsCBobdzqgAHht5OdQEODL2d0wQ4MPR2ThfgwNDbOUOAA0Nvp4YAB4bezpkCHBh6OzUFODD0ds4S4MDQ26klwIGht3O2AAeG3k5tAQ4MvZ1zBDgw9HbqCHBg6O2cK8CBobdTV4ADQ2/nPAEODL2degIcGHo75wtwYOjt1BfgwNDbaSDAgaG301CAA0Nv5wIBDgy9nUYCHBh6OxcKcGDo7TQW4MDQ27lIgANDb6eJAAeG3s7FAhwYejtNBTgw9HYuEeDA0NtpJsCBobdzqQAHht5OcwEODL2dywQ4MPR2LhfgwNDbaSHAgaG3c4UAB4bezpUCHBh6O1cJcGDo7bQU4MDQ22klwIGht9NagANDb6eNAAeG3k5bAQ4MvZ12AhwYejvtBTgw9HY6CHBg6O10FODA0NvpJMCBobfTWYADQ2+niwAHht7O1QIcGHo7XQU4MPR2uglwYOjtXCPAgaG3012AA0Nvp4cAB4beTk8BDgy9nV4CHBh6O72Nejt1I/v0dqCZAL0AzJXHPHHMkcb8YMyNxbxQzInEfEDMhcM8MMyBwvwfzH3BvA/MecB4f4x1xzhvjHHG+F6MbcW4ToxpxHg+jGXDOC6MYcL4HYxdwbgNjFnA93p8q8Z3WnyjxPc5fJvCdxl8k8D7eLyLxntYvIPE+ze8e8J7F7xzwPM2njXxnIVnDMTXiC0RVyGmwP0U9xL0o+hD0H5Qd8Ate8tnZF41YtfbgU6HNZ9EbY9UefQxtoe6PsdjkWB2Jf8RC3QZRw+lj0Me2Kx6O32D5xOW3k4m/rHyQV2E7cnXpfK3H69+7TPWdl20H6F+9RfgwNDbuVaAA0NvZ4AAB4beznUCHBh6OwMFODD0dgYJcGDo7VwvwIGht3ODAAeG3s6NAhwYejuDBTgw9HZuEuDA0NsZIsCBobczVIADQ29nmAAHht7OzQIcGHo7wwU4MPR2bhHgwNDbGSHAgaG3c6sAB4bezkgBDgy9ndsEODD0dkYJcGDo7dwuwIGhtzNagANDb+cOAQ4MvZ0xAhwYejt3CnBg6O3cJcCBobczVoADQ29nnAAHht7OeAEODL2duwU4MPR2JghwYOjt3CPAgaG3M1GAA0Nv514BDgy9nUkCHBh6O/cJcGDo7UwW4MDQ27lfgANDb2eKAAeG3s4DAhwYejsPCnBg6O1MFeDA0NuZJsCBobczXYADQ2/nIQEODL2dGQIcGHo7DwtwYOjtzBTgwNDbeUSAA0NvZ5YAB4bezqMCHBh6O7MFODD0dh4T4MDQ23lcgANDb+cJAQ4MvZ05AhwYejtPCnBg6O3MFeDA0Nt5SoADQ29nngAHht7O0wIcGHo78wU4MPR2njFw8F4TRs6L7NPbgWYC9AIwVx7zxDFHGvODMTcW80IxJxLzATEXDvPAMAcK838w9wXzPjDnAeP9MdYd47wxxhnjezG2FeM6MaYR4/kwlg3juDCGCeN3MHYF4zYwZgHf6/GtGt9p8Y0S3+fwbQrfZfBNAu/j8S4a72HxDhLv3/DuCe9d8M4Bz9t41sRzFp4xEF8jtkRchZgC91PcS9CPog9B+0HdAbfszaqDA82SI416O9DpsOaTqO2RKo9nje3hPJ/jsUgwu5L/iAW6jKOH8qxDHtgykvJJxfu54PmEpbdTAP9Y+aAuwvbk61L5u4BXv/YZa7suuoBQvxYa87C2+ZpFI5GzigY/v5Z37tlF7eW5SKA8GbpBzwtwYOgGLRbgwNANekGAA0M3aIkAB4Zu0IsCHBi6QUsFODB0g14S4MDQDVomwIGhG/SyAAeGbtArAhwYukGvCnBg6AYtF+DA0A16TYADQzdohQAHhm7Q6wIcGLpBbwhwYOgGvSnAgaEbtFKAA0M3aJUAB4Zu0GoBDgzdoLcEODB0g9YIcGDoBr0twIGhG7RWgANDN+gdAQ4M3aB1AhwYukHvCnBg6AatF+DA0A16T4ADQzdogwAHhm7Q+wIcGLpBGwU4MHSDPhDgwNAN+lCAA0M36CMBDgzdoE0CHBi6QR8LcGDoBm0W4MDQDfpEgANDN2iLAAeGbtCnAhwYukGfCXBg6AZ9LsCBoRu0VYADQzfoCwEODN2gLwU4MHSDvhLgwNAN2ibAgaEb9LUAB4Zu0HYBDgzdoG8EODB0g74V4MDQDfpOgANDN2iHAAeGbtBOAQ4M3aDvBTgwdIN+EODA0A36UYADQzfoJwEODN2gXQIcGLpBPwtwYOgG/SLAgaEb9KsAB4Zu0G4DB2ij1Ivs0w2CZgL0AjBXHvPEMUca84MxNxbzQjEnEvMBMRcO88AwBwrzfzD3BfM+MOcB4/0x1h3jvDHGGeN7MbYV4zoxphHj+TCWDeO4MIYJ43cwdgXjNjBmAd/r8a0a32nxjRLf5/BtCt9l8E0C7+PxLhrvYfEOEu/f8O4J713wzgHP23jWxHMWnjEQXyO2RFyFmAL3U9xL0I+iD0H7Qd0Bt+wtWdsjiA6QQT/kL60W6HQk55PqusQ8Utn0Wwlbe6jnczwWCWZX8h+xQJdxdF1+c8gDm1U36Pfg+YSlG5SFf6x8UBdhe/J1qfz9g1e/9hlruy76B6F+7RHgwNDb+VOAA0NvZ68AB4beTqTk/30ODL2dqAAHht5OPgEODL2dDAEODL2d/AIcGHo7mQIcGHo7BQQ4MPR2sgQ4MPR2CgpwYOjtFBLgwNDbOUCAA0Nv50ABDgy9ncICHBh6O0UEODD0dooKcGDo7RQT4MDQ2zlIgANDb6e4AAeG3s7BAhwYejslBDgw9HZKCnBg6O2UEuDA0Ns5RIADQ2/nUAEODL2dwwQ4MPR2DhfgwNDbOUKAA0Nv50gBDgy9naMEODD0do4W4MDQ2zlGgANDb6e0AAeG3k5MgANDb6eMAAeG3s6xAhwYejvHCXBg6O0cL8CBobdTVoADQ2/nBAEODL2dcgIcGHo75QU4MPR2KghwYOjtnCjAgaG3U1GAA0Nv5yQBDgy9nUoCHBh6OycLcGDo7VQW4MDQ26kiwIGht1NVgANDb+cUAQ4MvZ1qAhwYejunCnBg6O1UF+DA0Ns5TYADQ2/ndAEODL2dMwQ4MPR2aghwYOjtnCnAgaG3U1OAA0Nv5ywBDgy9nVoGDtAUOT+yT28HmgnQC8BcecwTxxxpzA/G3FjMC8WcSMwHxFw4zAPDHCjM/8HcF8z7wJwHjPfHWHeM88YYZ4zvxdhWjOvEmEaM58NYNozjwhgmjN/B2BWM28CYhb++13sJ32nxjRLf5/BtCt9l8E0C7+PxLhrvYfEOEu/f8O4J713wzgHP23jWxHMWnjEQXyO2RFyFmAL3U9xL0I+iD0H7Qd0Bt+zNqoMDzZIjDt53fhB9nj0Oejt7DHo7Zxvbw/k+x2ORYHYl/xELdBlHD8XCIXGz6u3UDp5P1KC3EzXo7UT/+Sdiq7uwPfm6VP6eY+CK386I7/2uc9G3CnpunZI2ftmbtfzPTX/5/31BJKfdqU7P7rtc+rzsc1OxqetYVxKvs9pXs6hXr4sa7pvx863t4Dxj/+LixzlGP85x8KMe736xz1jbdRTdqPMFODB0o+oLcGDoRjUQ4MDQjWoowIGhG3WBAAeGblQjAQ4M3agLBTgwdKMaC3Bg6EZdJMCBoRvVRIADQzfqYgEODN2opgIcGLpRlwhwYOhGNRPgwNCNulSAA0M3qrkAB4Zu1GUCHBi6UZcLcGDoRrUQ4MDQjbpCgANDN+pKAQ4M3airBDgwdKNaCnBg6Ea1EuDA0I1qLcCBoRvVRoADQzeqrQAHhm5UOwEODN2o9gIcGLpRHQQ4MHSjOgpwYOhGdRLgwNCN6izAgaEb1UWAA0M36moBDgzdqK4CHBi6Ud0EODB0o64R4MDQjeouwIGhG9VDgANDN6qnAAeGblQvAQ4M3ajeAhwYulF9BDgwdKP6CnBg6Eb1E+DA0I3qL8CBoRt1rQAHhm7UAAEODN2o6wQ4MHSjBgpwYOhGDRLgwNCNul6AA0M36gYBDgzdqBsFODB0owYLcGDoRt0kwIGhGzVEgANDN2qoAAeGbtQwAQ4M3aibBTgwdKOGC3Bg6EbdIsCBoRs1wqhjYf196IWc46Azk3VsuHZBHwbaLVYNmlsNei9WH5JtSfX70Ai5rnjw86ERctjB9rIYaagj+b1UJLIvjxwGJOWbyt4awc/Nkd9tJXOR4W0lHT4slQwO09WuUSX3HYhFgm8uDbauQ4M9MOQGu6jE36JOVrsKG+3K3qxCULcbOgYDq6jB/ug//xjsPjPyd92ydj5nGvIYHfJNBuxHO9SNOxwFqu7IAzGz0YY+YwxJzOzO9NfhvzYXUTKDINdfN//zHOrLXSXD96Oe0Y96Dn6MDbk9wq5bHYKrcf+HgiuUxUhjWYx0KIvxxuCqUHz/LwOS8k1lryW4yk0+p0c4+dyZyzqdqpzOivzdn1rrUYbh3LMidlbR5D9igS6LREeHDKxm5O+bnBWY5cZ4t7HxeA9A/9jzX76lsjFoo927d+8nfsdjkdR54J9EWyfEHwDuKRnJGY1MiPc6icfu8TEwORpIZcD4YAUx3iuI6ARDod1jhGeteKhAExyfllwewQcaH8HPd5DpnEiQGx1k9KO+gx/3Evy43uhHAwc/JhH8uMHoR0MHP+4j+HGj0Y8LHPyYTPBjsNGPRg5+3E/w4yajHxc6+DGF4McQox+NHfx4gODHUKMfFzn48SDBj2FGP5o4+DGV4MfNRj8udvBjGsGP4UY/mjr4MZ3gxy1GPy5x8OMhgh8jjH40c/BjBsGPW41+XOrgx8MEP0Ya/Wju4MdMgh+3Gf24zMGPRwh+jDL6cbmDH7MIftxu9KOFgx+PEvwYbfTjCgc/ZhP8uMPox5UOfjxG8GOM0Y+rHPx4nODHnUY/Wjr48QTBj7uMfrRy8GMOwY+xRj9aO/jxJMGPcUY/2jj4MZfgx3ijH20d/HiK4MfdRj/aOfgxj+DHBKMf7R38eJrgxz1GPzo4+DGf4MdEox8dHfx4huDHvUY/Ojn48SzBj0lGPzo7+PEcwY/7jH50cfBjAcGPyUY/rnbwYyHBj/uNfnR18GMRwY8pRj+6OfjxPMGPB4x+XOPgx2KCHw8a/eju4McLBD+mGv3o4eDHEoIf04x+9HTw40WCH9ONfvRy8GMpwY+HjH70dvDjJYIfM4x+9HHwYxnBj4eNfvR18ONlgh8zjX70c/DjFYIfjxj96O/gx6sEP2YZ/bjWwY/lBD8eNfoxwMGP1wh+zDb6cZ2DHysIfjxm9GOggx+vE/x43OjHIAc/3iD48YTRj+sd/HiT4Mccox83OPixkuDHk0Y/bnTwYxXBj7lGPwY7+LGa4MdTRj9ucvDjLYIf84x+DHHwYw3Bj6eNfgx18ONtgh/zjX4Mc/BjLcGPZ4x+3OzgxzsEP541+jHcwY91BD+eM/pxi4Mf7xL8WGD0Y4SDH+sJfiw0+nGrgx/vEfxYZPRjpIMfGwh+PG/04zYHP94n+LHY6McoBz82Evx4wejH7Q5+fEDwY4nRj9EOfnxI8ONFox93OPjxEcGPpUY/xjj4sYngx0tGP+508ONjgh/LjH7c5eDHZoIfLxv9GOvgxycEP14x+jHOwY8tBD9eNfox3sGPTwl+LDf6cbeDH58R/HjN6McEBz8+J/ixwujHPQ5+bCX48brRj4kOfnxB8OMNox/3OvjxJcGPN41+THLw4yuCHyuNftzn4Mc2gh+rjH5MdvDja4Ifq41+3O/gx3aCH28Z/Zji4Mc3BD/WGP14wMGPbwl+vG3040EHP74j+LHW6MdUBz92EPx4x+jHNAc/dhL8WGf0Y7qDH98T/HjX6MdDDn78QPBjvdGPGQ5+/Ejw4z2jHw87+PETwY8NRj9mOvixi+DH+0Y/HnHw42eCHxuNfsxy8OMXgh8fGP141MGPXwl+fGj0Y7aDH7sJfnxk9OMxBz9+I/ixyejH4w5+/E7w42OjH084+PEHwY/NRj/mOPixh+DHJ0Y/nnTw40+CH1uMfsx18GMvwY9PjX485eBHpFT4fnxm9GOegx9Rgh+fG/142sGPfAQ/thr9mO/gRwbBjy+Mfjzj4Ed+gh9fGv141sGPTIIfXxn9eM7BjwIEP7YZ/Vjg4EcWwY+vjX4sdPCjIMGP7UY/Fjn4UYjgxzdGP5538OMAgh/fGv1Y7ODHgQQ/vjP68YKDH4UJfuww+rHEwY8iBD92Gv140cGPogQ/vjf6sdTBj2IEP34w+vGSgx8HEfz40ejHMgc/ihP8+Mnox8sOfhxM8GOX0Y9XHPwoQfDjZ6Mfrzr4UZLgxy9GP5Y7+FGK4MevRj9ec/DjEIIfu41+rHDw41CCH78Z/XjdwY/DCH78bvTjDQc/Dif48YfRjzcd/DiC4Mceox8rHfw4kuDHn0Y/Vjn4cRTBj71GP1Y7+HE0wY/IwTY/3nLw4xiCH1GjH2sc/ChN8COf0Y+3HfyIEfzIMPqx1sGPMgQ/8hv9eMfBj2MJfmQa/Vjn4MdxBD8KGP1418GP4wl+ZBn9WO/gR1mCHwWNfrzn4McJBD8KGf3Y4OBHOYIfBxj9eN/Bj/IEPw40+rHRwY8KBD8KG/34wMGPEwl+FDH68aGDHxUJfhQ1+vGRgx8nEfwoZvRjk4MflQh+HGT042MHP04m+FHc6MdmBz8qE/w42OjHJw5+VCH4UcLoxxYHP6oS/Chp9ONTBz9OIfhRyujHZw5+VCP4cYjRj88d/DiV4MehRj+2OvhR3eAH1oev76Vp8f/GmuNYrxtrXWOdaKyxjPWJsbYv1sXFmrJYj3Vayb/XAcUamlh/Ems3Yt1DrBmI9fawVh3WecMaaVhfDGtzYV0rrAmF9ZSwFhHW8cEaOFg/BmuvYN0SrPmB9TKw1gTWacAaB1gfANr60KWHpjv00KElDh1uaFhD/xnaydAdhmYv9G6hFQudVWiUQt8T2pjQlYQmI/QMoQUIHT1o0EG/Ddpn0A2D5hb0qqD1BJ0kaAxBnwfaNtCFgaYK9Eig5QEdDGhIQH8B2gWY948585hvjrnamOeMOcKYX4u5qZjXiTmRmE+IuXiYx4Y5YJg/hblHmLeDOS+YL4K5FpingDH+GB+PseUYl40xzRgPjLG0GIeKMZwY/4ixgxh3hzFrGO+FsVIYZ4QxOhjfgrEhGFeBMQn4no9v4fiOjG+w+H6Jb3/4boZvTvheg28d+E6Ad+x4P413u3gvineKf72PK/X3eyC8Q8H7Bzy747kXz4x43sKzCuJ8xMiILxGbIa5BTID7Ke5F6MfRB6L/QNtDvf2n8ifV+RRb5miPyfiS9rZymqGt5Iu3leQtFrFtRt+iFhtd8zg95L4P9txdMni51PTSaIfyPMPY9zWI/K/v+1/f93+r78tnrPNoJ4b2G8X5aCfWNpyYRyqbapSy9asNfI7HIsHsSv4jFugyTr9aw5iH633PWpajDX3xmbyy3Geg7bromYSyrCnAoWCB8PM4S4BDzYLh51FLgEMtAoezBTjUJnCoLcChDoHDOQIc6hI41BHgUI/A4VwBDvUJHOoKcGhI4HCeAIdGBA71BDg0JnA4X4BDEwKH+gIcmhI4NBDg0IzAoaEAh+YEDhcIcNiURbgnCXBoQagPFwpwuJLAobEAh5YEDhcJcGhN4NBEgENbAoeLBTi0J3BoKsChI4HDJQIcOhM4NBPgcDWBw6UCHLoRODQX4NCdwOEyAQ49CRwuF+DQm8ChhQCHvgQOVwhw6E/gcKUAhwEEDlcJcBhI4NBSgMP1BA6tBDiUzk94thfgMJhQH9oIcBhC4NBWgMMwAod2AhyGEzi0F+AwgsChgwCHkQQOHQU4jCJw6CTAYTSBQ2cBDmMIHLoIcFiVEX4eVwtwGEuoD10FOIwncOgmwGECgcM1AhwmEjh0F+AwicChhwCHyQQOPQU4TCFw6CXAYQlhnFhvAQ5TCfWhjwCH6QQOfQU4zCBw6CfAYSaBQ38BDrMIHK4V4DCbwGGAAIfHCRyuE+Awh8BhoACHuQQOgwQ4zCNwuF6Aw3wChxsEODxL4HCjAIcFBA6DBTgsInC4SYDDYgKHIQrvHwgchgpwWErgMEyAwzICh5sFOLxC4DBcgMNyAodbBDisIHAYIcDhDQKHWwU4rCRwGCnAYTWBw20CHNYQOIwS4LCWwOF2AQ7rCBxGC3BYT+BwhwCHDQQOYwQ4bCRwuFOAw4cEDncp6OQQOIwV4LCZwGGcAIctBA7jBTh8RuBwtwCHrQQOEwQ4fEngcI8Ah20EDhMFOGwncLhXgMO3BA6TBDjsIHC4T4DD9wQOkwU4/EjgcL8Ah10EDlMEOPxC4PCAAIfdBA4PCnD4ncBhqgCHPQQO0wQ47CVwmC7AIVoo/DweEuCQQeAwQ4BDJoHDwwIcsggcZgpwKETg8IgAhwMJHGYJcChC4PCoAIdiBA6zBTgUJ3B4TIBDCQKHxwU4lCJweEKAw6EEDnMEOBxO4PCkAIcjCRzmCnA4msDhKQVdVgKHeQIcyhA4PC3A4TgCh/kCHMoSODwjwKEcgcOzAhwqEDg8J8ChIoHDAgEOlQgcFgpwqEzgsEiAQ1UCh+cFOFQjcFgswKE6gcMLAhxOJ3BYIsChBoHDiwIcahI4LBXgUIvA4SUBDrUJHJYJcKhD4PCyAIe6BA6vCHCoR+DwqgCH+gQOywU4NCRweE2AQyMChxUCHBoTOLwuwKEJgcMbAhyaEji8KcChGYHDSgEOzQkcVglwuJzAYbUAhysIHN4S4HAVgcMaAQ6tCBzeFuDQhsBhrQCHdgQO7whw6EDgsE6AQycCh3cFOHQhcFgvwKErgcN7AhyuIXDYIMChB4HD+wIcehE4bBTg0IfA4QMBDv0IHD40cMjwUkMvTYv/91netbW8dLaXanvpHC/V8dK5XqrrpfO8VM9L53upvpcaeKmhly7wUiMvXeilxl66yEtNvHSxl5p66RIvNfPSpV5q7qXLvHS5l1p46QovXemlq7zU0kutvNTaS2281NZLWJ8ea7NjXXKsyY31qLEWM9Yhxhq8WH8Wa69i3VGsuYn1JrHWItYZxBp7WF8Oa6thXTGsqYX1pLCWEtYRwho6WD8Ga6dg3RCsmYH1IrBWAtYJgEY+9OGhjQ5dcGhiQw8aWsjQAYYGLvRfoX0K3U9oXkLvEVqH0PmDxh303aBtBl0vaFpBzwlaRtDxgYYN9FugXQLdDmhWQK8BWgWYp4856pifjbnJmJeLOamYj4m5iJiHhzlomH+FuUeYd4M5J5hvgbkGGGePMeYYX42xxRhXizGlGE+JsYQYR4cxZBg/hbFDGDeDMSMYL4GxAvhOjm/E+D6Kb4P4LoZvQvgegm8BeA+Od8B4/4l3f3jvhXc+eN+BZ3085+IZD883iO0R1yKmQzyDeznuY+jD0X+h7aLeZm/5jHW+hvfP6JL7zq/S8aK+W6pOq7Dw4nrPDRvWolX5al81GLSo97i6W3bdvTN+bs1S9nxwTdA8Pipl648a+hyPRYLZlfxHLNBlkeiZpcLvjz4y5mH8/UyU5fiS5rLMZ6kvm3hl+c9m5byJUJYf57IsU3HG/eis+D7xulTZZBjOPctgz2aBci9YIPw8PhHgULNg+HlsEeBQi8DhUwEOtQkcPhPgUIfA4XMBDnUJHLYKcKhH4PCFAIf6BA5fCnBoSODwlQCHRgQO2wQ4NCZw+FqAQxMCh+0CHJoSOHwjwKEZgcO3AhyaEzh8p/C+JSv8PHYIcGhBqA87BThcSeDwvQCHlgQOPwhwaE3g8KMAh7YEDj8JcGhP4LBLgENHAoefBTh0JnD4RYDD1QQOvwpw6EbgsFuAQ3cCh98EOPQkcPhdgENvAoc/BDj0JXDYI8ChP4HDnwIcBhA47BXgMJDAIXLI/30O1xM4RAU4lM4ffh75BDgMJtSHDAEOQwgc8gtwGEbgkCnAYTiBQwEBDiMIHLIEOIwkcCgowGEUgUMhAQ6jCRwOEOAwhsDhQAEOqzLCz6OwAIexhPpQRIDDeAKHogIcJhA4FBPgMJHA4SABDpMIHIoLcJhM4HCwAIcpBA4lBDgsIYwTKynAYSqhPpQS4DCdwOEQAQ4zCBwOFeAwk8DhMAEOswgcDhfgMJvA4QgBDo8TOBwpwGEOgcNRAhzmEjgcLcBhHoHDMQIc5hM4lBbg8CyBQ0yAwwIChzICHBYROBwrwGExgcNxCu8fCByOF+CwlMChrACHZQQOJwhweIXAoZwAh+UEDuUFOKwgcKggwOENAocTBTisJHCoKMBhNYHDSQIc1hA4VBLgsJbA4WQBDusIHCoLcFhP4FBFgMMGAoeqAhw2EjicIsDhQwKHagIcNhE4nCrAYTOBQ3UBDlsIHE4T4PAZgcPpAhy2EjicIcDhSwKHGgIcthE4nCnAYTuBQ00BDt8SOJwlwGEHgUMtAQ7fEzicLcDhRwKH2gIcdhE4nCPA4RcChzoCHHYTOJwrwOF3Aoe6Ahz2EDicJ8BhL4FDPQEO0ULh53G+AIcMAof6AhwyCRwaCHDIInBoKMChEIHDBQIcDiRwaCTAoQiBw4UCHIoRODQW4FCcwOEiAQ4lCByaCHAoReBwsQCHQwkcmgpwOJzA4RIBDkcSODQT4HA0gcOlCrqsBA7NBTiUIXC4TIDDcQQOlwtwKEvg0EKAQzkChysEOFQgcLhSgENFAoerBDhUInBoKcChMoFDKwEOVQkcWgtwqEbg0EaAQ3UCh7YCHE4ncGgnwKEGgUN7AQ41CRw6CHCoReDQUYBDbQKHTgIc6hA4dBbgUJfAoYsAh3oEDlcLcKhP4NBVgENDAoduAhwaEThcI8ChMYFDdwEOTQgceghwaErg0FOAQzMCh14CHJoTOPQW4HA5gUMfAQ5XEDj0FeBwFYFDPwEOrQgc+gtwaEPgcK0Ah3YEDgMEOHQgcLhOgEMnAoeBAhy6EDgMEuDQlcDhegEO1xA43CDAoQeBw40CHHoROAwW4NCHwOEmAQ79CByGGDhkeOkCL02L//cnpSKRLV761EufeelzL2310hde+tJLX3lpm5e+9tJ2L33jpW+99J2Xdnhpp5e+99IPXvrRSz95aZeXfvbSL1761Uu7vfSbl3730h9e2uOlP72010sRz/aol/J5KcNL+b2E9emxNjvWJcea3FiPGmsxYx1irMGL9Wex9irWHcWam1hvEmstYp1BrLGH9eWwthrWFcOaWlhPCmspYR0hrKGD9WOwdspf64Z4CetFYK0ErBMAjXzow0MbHbrg0MSGHjS0kKEDDA1c6L9C+xS6n9C8hN4jtA6h8weNO+i7QdsMul7QtIKeE7SMoOMDDRvot0C7BLod0KyAXgO0CjBPH3PUMT8bc5MxLxdzUjEfE3MRMQ8Pc9Aw/wpzjzDvBnNOMN8Ccw0wzh5jzDG+GmOLMa4WY0oxnhJjCTGODmPIMH4KY4cwbgZjRjBeAmMF8J0c34jxfRTfBvFdDN+E8D0E3wLwHhzvgPH+E+/+8N4L73zwvgPP+njOxTMenm8Q2yOuRUyHeAb3ctzH0Iej/0LbRb3N3vIl1fkqHS/qu6XqtAoLL6733LBhLVqVr/ZVg0GLeo+ru2XX3Tu9/z+6ZCTycangbQTnby7173xSXZeYRyqbhh5i648u8DkeiwSzK/mPWKDLItFNpcLvjywcHH4/E2U5vqS5LDNwXfa5qcpyGK8s/9msnIcdEn4eNwtwKFgg/DyGC3CoSdAOuUWAQy0ChxECHGoTONwqwKEOgcNIAQ51CRxuE+BQj8BhlACH+gQOtwtwaEjgMFqAQyMChzsEODQmcBgjwKEJgcOdAhyaEjjcJcChGYHDWAEOzQkcxglw2JQVfh7jBTi0INSHuwU4XEngMEGAQ0sCh3sEOLQmcJgowKEtgcO9AhzaEzhMEuDQkcDhPgEOnQkcJgtwuJrA4X4BDt0IHKYIcOhO4PCAAIeeBA4PCnDoTeAwVYBDXwKHaQIc+hM4TBfgMIDA4SEBDgMJHGYIcLiewOFhAQ6l84efx0wBDoMJ9eERAQ5DCBxmKYyXI3B4VIDDcAKH2QIcRhA4PCbAYSSBw+MCHEYRODwhwGE0gcMcAQ5jCByeFOCwKiP8POYKcBhLqA9PCXAYT+AwT4DDBAKHpwU4TCRwmC/AYRKBwzMCHCYTODwrwGEKgcNzAhyWEMaJLRDgMJVQHxYKcJhO4LBIgMMMAofnBTjMJHBYLMBhFoHDCwIcZhM4LBHg8DiBw4sCHOYQOCwV4DCXwOElAQ7zCByWCXCYT+DwsgCHZwkcXhHgsIDA4VUBDosIHJYLcFhM4PCawvsHAocVAhyWEji8LsBhGYHDGwIcXiFweFOAw3ICh5UCHFYQOKwS4PAGgcNqAQ4rCRzeEuCwmsBhjQCHNQQObwtwWEvgsFaAwzoCh3cEOKwncFgnwGEDgcO7Ahw2EjisF+DwIYHDewo6OQQOGwQ4bCZweF+AwxYCh40CHD4jcPhAgMNWAocPBTh8SeDwkQCHbQQOmwQ4bP//2nsTeKum//9/n+5tnjTPtZNUkkqSJJVclTRJmuc5zZNCkoQkmiSJSpIkmQmZ53mekoSIJCEJ6b9euUfb/px771nrui/79f99z+Px7p7O2fu81+t51t5n7zW8FoHDpwIcdhE4bBXgsJvA4TMBDnsIHLYJcPiJwOFzAQ57CRy+EOCwj8DhSwEO+wkctgtw+J3A4SsBDgcIHL4W4HCQwGGHAIcYYU3CbwQ4pBA4fCvAITeBw04BDnkJHL4T4JCfwGGXAIeCBA7fC3AoTOCwW4BDUQKHHwQ4FCNw2CPAoQSBw48CHEoROPwkwKEMgcPPAhzKETjsFeBQgcDhFwEOlQgc9in4shI4/CrAoSqBw34BDtUIHH4T4FCdwOF3AQ41CBz+EOBQi8DhgACH2gQOfwpwqEPgcFCAQ10CB69M9DnUJ3CICXBoQOCQS4BDQwKHFAEOjQgcUgU4NCZwyC3AoQmBQx4BDk0JHPIKcGhG4JBPgEMLAof8AhxaEjgUEOCQRuBQUIBDKwKHQgIc2hA4FBbg0JbAoYgAh3YEDkUFOHQgcDhCgEMnAodiAhw6EzgUF+DQhcChhACHrgQOJQU4dCdwKCXAoSeBQ2kBDr0JHMoIcOhL4FBWgEN/AodyAhwGEjiUF+AwmMChggCHoQQOFQU4DCdwqCTA4TwCh8oCHEYROFQR4DCGwMEX4DCOwKGqAIcJBA5HWnBIMdHWxIr0/88s7XmXmZhl4nITV5i40sRsE1eZmGPiahNzTVxj4loT80zMN7HAxEITi0xcZ2KxietNLDFxg4mlJm40sczETSZuNrHcxAoTK03cYmKViVtNrDZxm4k1JrA+PdZmx7rkWJMb61FjLWasQ4w1eLH+LNZexbqjWHMT601irUWsM4g19rC+HNZWw7piWFML60lhLSWsI4Q1dLB+DNZOwbohWDMD60VgrQSsEwCPfPjDwxsdvuDwxIYfNLyQ4QMMD1z4v8L7FL6f8LyE3yO8DuHzB487+LvB2wy+XvC0gp8TvIzg4wMPG/i3wLsEvh3wrIBfA7wKME8fc9QxPxtzkzEvF3NSMR8TcxExDw9z0DD/CnOPMO8Gc04w3wJzDTDOHmPMMb4aY4sxrhZjSjGeEmMJMY4OY8gwfgpjhzBuBmNGMF4CYwXQT44+YvSPom8Q/WLoE0J/CPoC0A6ONmC0f6LtD+1eaPNBewfu9XGfi3s83N/g2h7Xtbimw/UMfsvxO3boHG4Cxy7qbfyRy7LONzL/zCl5ePt6g9qP31Z/Ra2HO6Y9OGNGt941G+xoPXXj2Pktt+1d+EP6tpeWts9zaenkc1SzPB+1TfC67yVXrvATP6ndvNiM0jl/PrLh4PD5ufFdLihp/V2m2tSXo3jf5d8PW85Hlcn5HNUFOOTLk/M5jhbg0ITgHVJDgENTAoeaAhyaETjUEuDQgsDhGAEOLQkcagtwSCNwOFaAQysChzoCHNoQOBwnwKEtgUNdAQ7tCBzqCXDoQOBQX4BDJwKH4wU4dCZwaCDAoQuBwwkCHLbkzfkcDQU4dCPUhxMFOPQgcGgkwKEXgcNJAhz6EDg0FuDQj8DhZAEOAwgcmghwGETgcIoAhyEEDk0FOAwjcDhVgMMIAodmAhxGEjg0F+AwmsChhQCHsQQOpwlwGE/g0FKAw0QCh9MFOEwmcEgT4DCFwOEMAQ4XEDi0EuBQJTXnc7QW4DCNUB/aCHCYTuBwpgCHGQQObQU4zCRwOEuAwywCh3YCHK4gcGgvwGE2gUMHAQ5zCBw6CnCYS+DQSYDDqyk5n+NsAQ7zCPWhswCHBQQO5whwWETg0EWAw2ICh3MFOCwhcOgqwGEpgUM3AQ7LCBy6C3DYRBgn1kOAw3JCfegpwGElgUMvAQ6rCBx6C3BYTeDQR4DDGgKHvgIc1hI49BPgsI7Aob8Ah/UEDgMEOGwgcBgowOEeAodBAhzuI3AYLMDhAQKHIQIcHiJwGCrAYSOBwzABDo8SOAxXaH8gcBghwOEJAofzBDg8ReAwUoDDMwQOowQ4PEfgMFqAwwsEDmMEOLxE4DBWgMMrBA7jBDi8RuAwXoDDGwQOEwQ4vEXgMFGAwzsEDpMEOLxH4DBZgMMHBA7nC3D4iMBhigCHzQQOUxV8cggcLhDgsJXA4UIBDtsIHC4S4PAFgcM0AQ7bCRwuFuDwNYHDdAEO3xA4XCLAYSeBwwwBDrsIHC4V4LCbwGGmAIc9BA6XCXD4icBhlgCHvQQOlwtw2EfgcIUAh/0EDlcKcPidwGG2AIcDBA5XCXA4SOAwR4BDjLAm4dUCHFIIHOYKcMhN4HCNAIe8BA7XCnDIT+AwT4BDQQKH+QIcChM4LBDgUJTAYaEAh2IEDosEOJQgcLhOgEMpAofFAhzKEDhcL8ChHIHDEgEOFQgcbhDgUInAYamCLyuBw40CHKoSOCwT4FCNwOEmAQ7VCRxuFuBQg8BhuQCHWgQOKwQ41CZwWCnAoQ6Bwy0CHOoSOKwS4FCfwOFWAQ4NCBxWC3BoSOBwmwCHRgQOawQ4NCZwuF2AQxMCh7UCHJoSONwhwKEZgcM6AQ4tCBzuFODQksBhvQCHNAKHuwQ4tCJw2CDAoQ2Bw90CHNoSONwjwKEdgcO9Ahw6EDjcJ8ChE4HD/QIcOhM4PCDAoQuBw4MCHLoSODwkwKE7gcPDAhx6EjhsFODQm8DhEQEOfQkcHhXg0J/A4TEBDgMJHDYJcBhM4PC4AIehBA5PCHAYTuDwpACH8wgcnhLgMIrA4WkBDmMIHJ4R4DCOwOFZAQ4TCByes+CQYuIsEyvS/3+02beGiZomapk4xkRtE8eaqGPiOBN1TdQzUd/E8SYamDjBREMTJ5poZOIkE41NnGyiiYlTTDQ1caqJZiaam2hh4jQTLU2cbiLNxBkmWplobaKNiTNNYH16rM2OdcmxJjfWo8ZazFiHGGvwYv1ZrL2KdUex5ibWm8Rai1hnEGvsYX05rK2GdcWwphbWk8JaSlhHCGvoYP0YrJ2CdUOwZgbWi8BaCVgnAB758IeHNzp8weGJDT9oeCHDBxgeuPB/hfcpfD/heQm/R3gdwucPHnfwd4O3GXy94GkFPyd4GcHHBx428G+Bdwl8O+BZAb8GeBVgnj7mqGN+NuYmY14u5qRiPibmImIeHuagYf4V5h5h3g3mnGC+BeYaYJw9xphjfDXGFmNcLcaUYjwlxhJiHB3GkGH8FMYOYdwMxoxgvATGCqCfHH3E6B9F3yD6xdAnhP4Q9AWgHRxtwGj/RNsf2r3Q5oP2Dtzr4z4X93i4v8G1Pa5rcU2H6xn8luN3DOdwnL9w7KLexh+5LOv8nJKGTcnD29cb1H78tvoraj3cMe3BGTO69a7ZYEfrqRvHzm+5be/CH8z72L56Gfs82CfZHM+XsTsfnZXgdd9LrlzhJ35Su3mxo8rk/Pnoecsctp+P73JBSbc6E982q+/yBQsNKH9K+t/4ftn8fv/x2Rb7xfLlyfkcL/Lq+eGkdvvFmhB8NF4S4NCUwOFlAQ7NCBxeEeDQgsDhVQEOLQkcXhPgkEbg8LoAh1YEDm8IcGhD4PCmAIe2BA5vCXBoR+DwtgCHDgQO7whw6ETg8K4Ah84EDu8JcOhC4PC+AIcteXM+xwcCHLoR6sOHAhx6EDh8JMChF4HDxwIc+hA4bBbg0I/A4RMBDgMIHLYIcBhE4PCpAIchBA5bBTgMI3D4TIDDCAKHbQIcRhI4fC7AYTSBwxcCHMYSOHwpwGE8gcN2AQ4TCRy+EuAwmcDhawEOUwgcdghwuIDA4RsBDlVScz7HtwIcphHqw04BDtMJHL4T4DCDwGGXAIeZBA7fC3CYReCwW4DDFQQOPwhwmE3gsEeAwxwChx8FOMwlcPhJgMOrKTmf42cBDvMI9WGvAIcFBA6/CHBYROCwT4DDYgKHXwU4LCFw2C/AYSmBw28CHJYROPwuwGETYZzYHwIclhPqwwEBDisJHP4U4LCKwOGgAIfVBA5e2ehzWEPgEBPgsJbAIZcAh3UEDikCHNYTOKQKcNhA4JBbgMM9BA55BDjcR+CQV4DDAwQO+QQ4PETgkF+Aw0YChwICHB4lcCgowGETgUMhAQ5PEDgUFuDwFIFDEQEOzxA4FBXg8ByBwxECHF4gcCgmwOElAofiAhxeIXAoIcDhNQKHkgIc3iBwKCXA4S0Ch9ICHN4hcCgjwOE9AoeyAhw+IHAoJ8DhIwKH8gIcNhM4VBDgsIXAoaIAh60EDpUEOGwjcKgswOELAocqAhy2Ezj4Ahy+JnCoKsDhGwKHIwU47CRwqCbAYReBw1ECHHYTOFQX4LCHwOFoAQ4/ETjUEOCwl8ChpgCHfQQOtQQ47CdwOEaAw+8EDrUFOBwgcDhWgMNBAoc6AhxihPX5jhPgkELgUFeAQ24Ch3oCHPISONQX4JCfwOF4AQ4FCRwaCHAoTOBwggCHogQODQU4FCNwOFGAQwkCh0YCHEoROJwkwKEMgUNjAQ7lCBxOFuBQgcChiQCHSgQOpwhwqELg0FSAQ1UCh1MFOFQjcGgmwKE6gUNzAQ41CBxaCHCoReBwmgCH2gQOLQU41CFwOF2AQ10ChzQBDvUJHM4Q4NCAwKGVAIeGBA6tBTg0InBoI8ChMYHDmQIcmhA4tBXg0JTA4SwBDs0IHNoJcGhB4NBegENLAocOAhzSCBw6CnBoReDQSYBDGwKHswU4tCVw6CzAoR2BwzkCHDoQOHQR4NCJwOFcAQ6dCRy6CnDoQuDQTYBDVwKH7gIcuhM49BDg0JPAoacAh94EDr0EOPQlcOgtwKE/gUMfAQ4DCRz6CnAYTODQT4DDUAKH/gIchhM4DBDgcB6Bw0ABDqMIHAYJcBhD4DBYgMM4AochAhwmEDgMLWuXI5fl588p6XkLSia//dz07cM66g1qP35b/RW1Hu6Y9uCMGd1612ywo/XUjWPnt9y2d+EP5v1hljpsOZ1s/pltypViWa6TLbadXTL5bYcnrzf29z9e8vs0Sc/h2e3npZooYCJ3og+1LENjz77+u+Q5yePkaeTl/LF2teWxdk3Jwy/4nv3DlsHWUnbn3fhjRHpdPK/s4Zz2F54WJwl8dkr63xHp+6FyFwkVzOVLmm/5Jc23/JIOHjz4a6LXfS/rfPgnqG9kOvhRZb1/QhmZ/k0EXxsVAGz75cTB2J75B1TL2TP/XMdyDbQsV/yRmnyeBSZPbGTZ5Ms0yuJXw4JrLFmt8YppyxIH7kiHXyM8bA/QcsU97wyLA7Sy2b6FQ/0YXTbndbSy0FHFUccYgo7WFjp8Rx1jCTraWOio6qhjHEHHmRY6jnTUMZ6go62FjmqOOiYQdJxloeMoRx0TCTraWeio7qhjEkFHewsdRzvqmEzQ0cFCRw1HHecTdHS00FHTUccUgo5OFjpqOeqYStBxtoWOYxx1XEDQ0dlCR21HHRcSdJxjoeNYRx0XEXR0sdBRx1HHNIKOcy10HOeo42KCjq4WOuo66phO0NHNQkc9Rx2XEHR0t9BR31HHDIKOHhY6jnfUcSlBR08LHQ0cdcwk6OhloeMERx2XEXT0ttDR0FHHLIKOPhY6TnTUcTlBR18LHY0cdVxB0NHPQsdJjjquJOjob6GjsaOO2QQdAyx0nOyo4yqCjoEWOpo46phD0DHIQscpjjquJugYbKGjqaOOuQQdQyx0nOqo4xqCjqEWOpo56riWoGOYhY7mjjrmEXQMt9DRwlHHfIKOERY6TnPUsYCg4zwLHS0ddSwk6BhpoeN0Rx2LCDpGWehIc9RxHUHHaAsdZzjqWEzQMcZCRytHHdcTdIy10NHaUccSgo5xFjraOOq4gaBjvIWOMx11LCXomGCho62jjhsJOiZa6DjLUccygo5JFjraOeq4iaBjsoWO9o46biboON9CRwdHHcsJOqZY6OjoqGMFQcdUCx2dHHWsJOi4wELH2Y46biHouNBCR2dHHasIOi6y0HGOo45bCTqmWejo4qhjNUHHxRY6znXUcRtBx3QLHV0ddawh6LjEQkc3Rx23E3TMsNDR3VHHWoKOSy109HDUcQdBx0wLHT0ddawj6LjMQkcvRx13EnTMstDR21HHegsdmJfUzkTz9P9jzgXmK2CsP8bJY4w5xmdjbDPGBWNMLcajYiwnxkFiDCHG32HsGsZ9YcwUxhthrA7GuWCMCMZXYGwC+vXRJ47+ZPTFoh8TfYDoP0PfE/pt0OeB/gK0taOdGm28aB9F2yLa5dCmhfYgtKWgHQL38Lj/xb0j7rtwz4LrfVwr4zoT12i4vsG1AX5X8ZuE8znOhTiP4BhE/cV3v75sYj427O9Knn0+i/lD+Qbm8BwuzB9C2W3r2obk9R46XtoleN337B622mzK6Jrjbstjrr33f8dc+JizPZ/iOwpOWE1mjhy+J9s8d1vkuMfyeGif4HXfS65c4Sd+Urtxjod7HHLgYXu+vfe/P9/G/v7Hszvf3utwvr2PV78OF9Zuv9h9hPp1vwCHfHlyPscDAhya5Mv5HA8KcGhK4PCQAIdmBA4PC3BoQeCwUYBDSwKHRwQ4pBE4PCrAoRWBw2MCHNoQOGwS4NCWwOFxAQ7tCByeEODQgcDhSQEOnQgcnhLg0JnA4WkBDl0IHJ4R4LAlb87neFaAQzdCfXhOgEMPAofnBTj0InB4QYBDHwKHFwU49CNweEmAwwACh5cFOAwicHhFgMMQAodXBTgMI3B4TYDDCAKH1wU4jCRweEOAw2gChzcFOIwlcHhLgMN4Aoe3BThMJHB4R4DDZAKHdwU4TCFweE+AwwUEDu8LcKiSmvM5PhDgMI1QHz4U4DCdwOEjAQ4zCBw+FuAwk8BhswCHWQQOnwhwuILAYYsAh9kEDp8KcJhD4LBVgMNcAofPBDi8mpLzObYJcJhHqA+fC3BYQODwhQCHRQQOXwpwWEzgsF2AwxICh68EOCwlcPhagMMyAocdAhw2EcaJfSPAYTmhPnwrwGElgcNOAQ6rCBy+E+CwmsBhlwCHNQQO3wtwWEvgsFuAwzoChx8EOKwncNgjwGEDgcOPAhzuIXD4ScH/gcDhZwsO8BTp4B3224FnAvwCMFce88QxRxrzgzE3FvNCMScS8wExFw7zwDAHCvN/MPcF8z4w5wHj/THWHeO8McYZ43sxthXjOjGmEeP5MJYN47gwhgnjdzB2BeM2MGYB/fXoq0Y/Lfoo0T+Hvin0y6BPAu3xaItGOyzaINH+hrYntLugzQH327jXxH0W7jFwfY1rS1xX4ZoCv6f4LcF5FOcQHD+oO+AWf9j64DT27P124NNhm+d+ixx7LY+HDgle973kyhV+4ie1G8cPZa9DDjxs/XZ+ST5PTvntHKpOtnxQF1H28H5Z6d3Hq1+HC2u3X2wfoX79KsCB4bezX4ADw2/nNwEODL+d3wU4MPx2/hDgwPDbOSDAgeG386cAB4bfzkEBDgy/Ha9c9Dkw/HZiAhwYfju5BDgw/HZSBDgw/HZSBTgw/HZyC3Bg+O3kEeDA8NvJK8CB4beTT4ADw28nvwAHht9OAQEODL+dggIcGH47hQQ4MPx2CgtwYPjtFBHgwPDbKSrAgeG3c4QAB4bfTjEBDgy/neICHBh+OyUEODD8dkoKcGD47ZQS4MDw2yktwIHht1NGgAPDb6esAAeG3045AQ4Mv53yAhwYfjsVBDgw/HYqCnBg+O1UEuDA8NupLMCB4bdTRYADw2/HF+DA8NupKsCB4bdzpAAHht9ONQEODL+dowQ4MPx2qgtwYPjtHC3AgeG3U0OAA8Nvp6YAB4bfTi0BDgy/nWMEODD8dmoLcGD47RwrwIHht1NHgAPDb+c4AQ4Mv526AhwYfjv1BDgw/HbqC3Bg+O0cL8CB4bfTQIADw2/nBAEODL+dhgIcGH47JwpwYPjtNBLgwPDbOcmCAzxFOnqH/XbgmQC/AMyVxzxxzJHG/GDMjcW8UMyJxHxAzIXDPDDMgcL8H8x9wbwPzHnAeH+Mdcc4b4xxxvhejG3FuE6MacR4PoxlwzgujGHC+B2MXcG4DYxZQH89+qrRT4s+SvTPHeqbMoE+CbTHoy0a7bBog0T7G9qe0O6CNgfcb+NeE/dZuMfA9TWuLXFdhWsK/J7itwTnUZxDcPyg7oBb/GHrg3OSZ++386uD386vFjkaWx4PHRO87nvJlSv8xE9qN44fig2H4MPWb+fk5PPklN/OoSLb8kFdRNnD+2Wltwmvfh0urN1+sSblcj7HKQIcGH47TRXqA+H391QBDgy/nWYCHBh+O80FODD8dloIcGD47ZwmwIHht9NSgAPDb+d0AQ4Mv500AQ4Mv50zBDgw/HZaCXBg+O20FuDA8NtpI8CB4bdzpgAHht9OWwEODL+dswQ4MPx22glwYPjttBfgwPDb6SDAgeG301GAA8Nvp5MAB4bfztkCHBh+O50FODD8ds4R4MDw2+kiwIHht3OuAAeG305XAQ4Mv51uAhwYfjvdBTgw/HZ6CHBg+O30FODA8NvpJcCB4bfTW4ADw2+njwAHht9OXwEODL+dfgIcGH47/QU4MPx2BghwYPjtDBTgwPDbGSTAgeG3M1iAA8NvZ4gAB4bfzlABDgy/nWECHBh+O8MFODD8dkYIcGD47ZwnwIHhtzNSgAPDb2eUAAeG385oAQ4Mv50xAhwYfjtjBTgw/HbGCXBg+O2MF+DA8NuZIMCB4bczUYADw29nkgAHht/OZAEODL+d8wU4MPx2pghwYPjtTBXgwPDbuUCAA8Nv50IBDgy/nYssOMCgo5N32G8HngnwC8BcecwTxxxpzA/G3FjMC8WcSMwHxFw4zAPDHCjM/8HcF8z7wJwHjPfHWHeM88YYZ4zvxdhWjOvEmEaM58NYNozjwhgmjN/B2BWM28CYBfTXo68a/bToo0T/HPqm0C+DPgm0x6MtGu2waINE+xvantDugjYH3G/jXhP3WbjHwPU1ri1xXYVrCvye4rcE51GcQ3D8oO6AW/xh64OztZS93w58OmzzBL09ssoxzfJ46JTgdd9LrlzhJ35Su3H8UKY55MDD1m/n4uTz5JTfTir+seWDuoiyh/fLSu90Xv06XFi7/WLTCfXrEgEODL+dGQIcGH47lwpwYPjtzBTgwPDbuUyAA8NvZ5YAB4bfzuUCHBh+O1cIcGD47VwpwIHhtzNbgAPDb+cqAQ4Mv505AhwYfjtXC3Bg+O3MFeDA8Nu5RoADw2/nWgEODL+deQIcGH478wU4MPx2FghwYPjtLBTgwPDbWSTAgeG3c50AB4bfzmIBDgy/nesFODD8dpYIcGD47dwgwIHht7NUgAPDb+dGAQ4Mv51lAhwYfjs3CXBg+O3cLMCB4bezXIADw29nhQAHht/OSgEODL+dWwQ4MPx2VglwYPjt3KowTozAYbUAB4bfzm0CHBh+O2sEODD8dm4X4MDw21krwIHht3OHAAeG3846AQ4Mv507BTgw/HbWC3Bg+O3cJcCB4bezQYADw2/nbgEODL+dewQ4MPx27hXgwPDbuU+AA8Nv534BDgy/nQcEODD8dh4U4MDw23lIgAPDb+dhAQ4Mv52NAhwYfjuPCHBg+O08KsCB4bfzmAAHht/OJgEODL+dxwU4MPx2nhDgwPDbedKCAzxFzvYO++3AMwF+AZgrj3nimCON+cGYG4t5oZgTifmAmAuHeWCYA4X5P5j7gnkfmPOA8f4Y645x3hjjjPG9GNuKcZ0Y04jxfBjLhnFcGMOE8TsYu4JxGxizgP569FWjnxZ9lOifQ98U+mXQJ4H2eLRFox0WbZBof0PbE9pd0OaA+23ca+I+C/cYuL7GtSWuq3BNgd9T/JbgPIpzCI4f1B1wiz9sfXAaefZ+O/DpsM0T9PbIKsdTlsfD2Qle973kyhV+4ie1G8cP5SmHHHjY+u08nXyenPLbyY1/bPmgLqLs4f2y0vsMr34dLqzdfrFnCPXrWQEODL+d5wQ4MPx2nhfgwPDbeUGAA8Nv50UBDgy/nZcEODD8dl4W4MDw23lFgAPDb+dVAQ4Mv53XBDgw/HZeF+DA8Nt5Q4ADw2/nTQEODL+dtwQ4MPx23hbgwPDbeUeAA8Nv510BDgy/nfcEODD8dt4X4MDw2/lAgAPDb+dDAQ4Mv52PBDgw/HY+FuDA8NvZLMCB4bfziQAHht/OFgEODL+dTwU4MPx2tgpwYPjtfCbAgeG3s02AA8Nv53MBDgy/nS8EODD8dr4U4MDw29kuwIHht/OVAAeG387XAhwYfjs7BDgw/Ha+EeDA8Nv5VoADw29npwAHht/OdwIcGH47uwQ4MPx2vhfgwPDb2S3AgeG384MAB4bfzh4BDgy/nR8FODD8dn4S4MDw2/lZgAPDb2evAAeG384vAhwYfjv7BDgw/HZ+FeDA8NvZL8CB4bfzmwAHht/O7wIcGH47fwhwYPjtHBDgwPDb+VOAA8Nv56AAB4bfjlc++hwYfjsxAQ4Mv51cAhwYfjspAhwYfjupFhzgKdLZO+y3A88E+AVgrjzmiWOONOYHY24s5oViTiTmA2IuHOaBYQ4U5v9g7gvmfWDOA8b7Y6w7xnljjDPG92JsK8Z1YkwjxvNhLBvGcWEME8bvYOwKxm1gzAL669FXjX5a9FGifw59U+iXQZ8E2uPRFo12WLRBov0NbU9od0GbA+63ca+J+yzcY+D6GteWuK7CNQV+T/FbgvMoziE4flB3wC3+sPXBgWfJeZZ+O886+O08a+G3k9vyeOic4HXfS65c4Sd+Urtx/FBsOAQftn47eZLPk1N+O3nwjy0f1EWUPbxfVnrz8urX4cLa7RfLWz7nc+SzzGF7zM8p6XlXl0x++7lm22tK2n+f+QW+T4ZvUAEBDgzfoIICHBi+QYUEODB8gwoLcGD4BhUR4MDwDSoqwIHhG3SEAAeGb1AxAQ4M36DiAhwYvkElBDgwfINKCnBg+AaVEuDA8A0qLcCB4RtURoADwzeorAAHhm9QOQEODN+g8gIcGL5BFQQ4MHyDKgpwYPgGVRLgwPANqizAgeEbVEWAA8M3yBfgwPANqirAgeEbdKQAB4ZvUDUBDgzfoKMEODB8g6oLcGD4Bh0twIHhG1RDgAPDN6imAAeGb1AtAQ4M36BjBDgwfINqC3Bg+AYdK8CB4RtUR4ADwzfoOAEODN+gugIcGL5B9QQ4MHyD6gtwYPgGHS/AgeEb1ECAA8M36AQBDgzfoIYCHBi+QScKcGD4BjUS4MDwDTpJgAPDN6ixAAeGb9DJAhwYvkFNBDgwfINOEeDA8A1qKsCB4Rt0qgAHhm9QMwEODN+g5gIcGL5BLQQ4MHyDThPgwPANainAgeEbdLoAB4ZvUJoAB4Zv0BkCHBi+Qa0EODB8g1oLcGD4BrWx9A06xzvsGwTPBPgFYK485oljjjTmB2NuLOaFYk4k5gNiLhzmgWEOFOb/YO4L5n1gzgPG+2OsO8Z5Y4zzofG9JjCuE2MaMZ4PY9kwjgtjmDB+B2NXMG4DYxbQX4++avTToo8S/XPom0K/DPok0B6Ptmi0w6INEu1vaHtCuwvaHHC/jXtN3GfhHgPX17i2xHUVrinwe4rfEpxHcQ7B8YO6A27xR9jbIxkfIAv/kENeLfDpCOfJar9gjqzKdGZ5u+PhnASv+15y5Qo/8ZPajePrcqZDDjxsfYPaJp8np3yD8uIfWz6oiyh7eL+s9J7Fq1+HC2u3X+wsQv1qJ8CB4bfTXoADw2+ngwAHht9ORwEODL+dTgIcGH47ZwtwYPjtdBbgwPDbOUeAA8Nvp4sAB4bfzrkCHBh+O10FODD8droJcGD47XQX4MDw2+khwIHht9NTgAPDb6eXAAeG305vAQ4Mv50+AhwYfjt9BTgw/Hb6CXBg+O30F+DA8NsZIMCB4bczUIADw29nkAAHht/OYAEODL+dIQIcGH47QwU4MPx2hglwYPjtDBfgwPDbGSHAgeG3c54AB4bfzkgBDgy/nVECHBh+O6MFODD8dsYIcGD47YwV4MDw2xknwIHhtzNegAPDb2eCAAeG385EAQ4Mv51JAhwYfjuTBTgw/HbOF+DA8NuZIsCB4bczVYADw2/nAgEODL+dCwU4MPx2LhLgwPDbmSbAgeG3c7EAB4bfznQBDgy/nUsEODD8dmYIcGD47VwqwIHhtzNTgAPDb+cyAQ4Mv51ZAhwYfjuXC3Bg+O1cIcCB4bdzpQAHht/ObAEODL+dqwQ4MPx25ghwYPjtXC3AgeG3M9eCAzxFuniH/XbgmQC/AMyVxzxxzJHG/GDMjcW8UMyJxHxAzIXDPDDMgcL8H8x9wbwPzHnAeH+Mdcc4b4xxxvhejG3FuE6MacR4PoxlwzgujGHC+B2MXcG4DYxZQH89+qrRT4s+SvTPoW8K/TLok0B7PNqi0Q6LNki0v6HtCe0uaHPA/TbuNXGfhXsMXF/j2hLXVbimwO8pfktwHsU5BMcP6g64xR+2PjjwLBlR9vD2yfjzwKfDNk/Q2yOrHNdYHg9dErzue8mVK/zET2o3jh/KNQ458LD127k2+TwxC7+dmIXfTuzvfzy7uouyh/fLSu88C6747JT0v4n2c/G3Snbb+eXt+MUftt//gv/++/9rB++f5c5q8/i5y+WcF982KzYLHetKcD/b8s0paep1SYvfzfTtbY+DRZbnFxcd8yx1zHPQcR3v9+JwYe32o/hGLRbgwPCNul6AA8M3aokAB4Zv1A0CHBi+UUsFODB8o24U4MDwjVomwIHhG3WTAAeGb9TNAhwYvlHLBTgwfKNWCHBg+EatFODA8I26RYADwzdqlQAHhm/UrQIcGL5RqwU4MHyjbhPgwPCNWiPAgeEbdbsAB4Zv1FoBDgzfqDsEODB8o9YJcGD4Rt0pwIHhG7VegAPDN+ouAQ4M36gNAhwYvlF3C3Bg+EbdI8CB4Rt1rwAHhm/UfQIcGL5R9wtwYPhGPSDAgeEb9aAAB4Zv1EMCHBi+UQ8LcGD4Rm0U4MDwjXpEgAPDN+pRAQ4M36jHBDgwfKM2CXBg+EY9LsCB4Rv1hAAHhm/UkwIcGL5RTwlwYPhGPS3AgeEb9YwAB4Zv1LMCHBi+Uc8JcGD4Rj0vwIHhG/WCAAeGb9SLAhwYvlEvCXBg+Ea9LMCB4Rv1igAHhm/UqwIcGL5RrwlwYPhGvS7AgeEb9YYAB4Zv1JsCHBi+UW8JcGD4Rr0twIHhG/WOAAeGb9S7AhwYvlHvWfpY2H4+/ELmOfjM/JbD/ifwh1lQ3t6D5n0LvxdbDeGyZPX58Ah5oUzy28MjZFhZ++/iA4s6kmqisHc4xz8KEMqbVXmbJb/tP/J9WD4bCT8sb7/fRxYGXa7l+qj84Rd8L/mHywG70OGA/TOHD9j85f8ydbIt10HLcsUftkZQH1ucGCxYxQ5m0wgsq3I39/6qW7Ynn+YWOTbn8I8M2G92qBufOBpUffIvmJlttjhnbCGZmX3639fhQw8XUzILQ65DP/6LHOrL1vI5r+M6Sx3XOej4LIePR5TrfYeLq20RurjCd/GB5XfxgcN38bnlxVX+9L//U4BQ3qzKa3NxlZ08TT1Onk+zWaez+p5O8/46n9rWoxSLbU/z7FnFwk/8pHbzYptzGFgL768fOVtgNj+MX1gePEW8w+XJTFtWZUz2oD148OBniV73vaxz4J9gWb9MvwHYXt7759XIl+lnneBr2xMUMHw1kFUBPk/ui1hgvojYlxZf2nZLeLYVDxXoS8e7JZdb8Bctb8EXO9h0flU+53W8ZKnjegcdXxN0vGypY4mDjh0EHa9Y6rjBQcc3BB2vWupY6qDjW4KO1yx13OigYydBx+uWOpY56PiOoOMNSx03OejYRdDxpqWOmx10fE/Q8ZaljuUOOnYTdLxtqWOFg44fCDresdSx0kHHHoKOdy113OKg40eCjvcsdaxy0PETQcf7ljpuddDxM0HHB5Y6Vjvo2EvQ8aGljtscdPxC0PGRpY41Djr2EXR8bKnjdgcdvxJ0bLbUsdZBx36Cjk8sddzhoOM3go4tljrWOej4naDjU0sddzro+IOgY6uljvUOOg4QdHxmqeMuBx1/EnRss9SxwUHHQYKOzy113O2gw6uQ8zq+sNRxj4OOGEHHl5Y67nXQkYugY7uljvscdKQQdHxlqeN+Bx2pBB1fW+p4wEFHboKOHZY6HnTQkYeg4xtLHQ856MhL0PGtpY6HHXTkI+jYaaljo4OO/AQd31nqeMRBRwGCjl2WOh510FGQoON7Sx2POegoRNCx21LHJgcdhQk6frDU8biDjiIEHXssdTzhoKMoQcePljqedNBxBEHHT5Y6nnLQUYyg42dLHU876ChO0LHXUsczDjpKEHT8YqnjWQcdJQk69lnqeM5BRymCjl8tdTzvoKM0Qcd+Sx0vOOgoQ9Dxm6WOFx10lCXo+N1Sx0sOOsoRdPxhqeNlBx3lCToOWOp4xUFHBYKOPy11vOqgoyJBx0FLHa856KhE0OGVtdPxuoOOygQdMUsdbzjoqELQkctSx5sOOnyCjhRLHW856KhK0JFqqeNtBx1HEnTkttTxjoOOagQdeSx1vOug4yiCjryWOt5z0FGdoCOfpY73HXQcTdCR31LHBw46ahB0FLDU8aGDjpoEHQUtdXzkoKMWQUchSx0fO+g4hqCjsKWOzQ46ahN0FLHU8YmDjmMJOopa6tjioKMOQccRljo+ddBxHEFHMUsdWx101CXoKG6p4zMHHfUIOkpY6tjmoKM+QUdJSx2fO+g4nqCjlKWOLxx0NCDoKG2p40sHHScQdJSx1LHdQUdDgo6yljq+ctBxIkFHOUsdXzvoaETQUd5Sxw4HHScRdFSw1PGNg47GBB0VLXV866DjZIKOSpY6djroaELQUdlSx3cOOk4h6KhiqWOXg46mBB2+pY7vHXScStBR1VLHbgcdzQg6jrTU8YODjuYEHdUsdexx0NGCoOMoSx0/Oug4jaCjuqWOnxx0tCToONpSx88OOk4n6KhhqWOvg440go6aljp+cdBxBkFHLUsd+xx0tCLoOMZSx68OOloTdNS21LHfQUcbgo5jLXX85qDjTIKOOpY6fnfQ0Zag4zhLHX846DiLoKOupY4DDjraEXTUs9Txp4OO9gQd9S11HHTQ0YGg43hLHV4pex0dCToaWOqIOejoRNBxgqWOXA46ziboaGipI8VBR2eCjhMtdaQ66DiHoKORpY7cDjq6EHScZKkjj4OOcwk6GlvqyOugoytBx8mWOvI56OhG0NHEUkd+Bx3dCTpOsdRRwEFHD4KOppY6Cjro6EnQcaqljkIOOnoRdDSz1FHYQUdvgo7mljqKOOjoQ9DRwlJHUQcdfQk6TrPUcYSDjn4EHS0tdRRz0NGfoON0Sx3FHXQMIOhIs9RRwkHHQIKOMyx1lHTQMYigo5WljlIOOgYTdLS21FHaQccQgo42ljrKOOgYStBxpqWOsg46hhF0tLXUUc5Bx3CCjrMsdZR30DGCoKOdpY4KDjrOI+hob6mjooOOkQQdHSx1VHLQMYqgo6OljsoOOkYTdHSy1FHFQccYgo6zLXX4DjrGEnR0ttRR1UHHOIKOcyx1HOmgYzxBRxdLHdUcdEwg6DjXUsdRDjomEnR0tdRR3UHHJIKObpY6jnbQMZmgo7uljhoOOs4n6OhhqaOmg44pBB09LXXUctAxlaCjl6WOYxx0XEDQ0dtSR20HHRcSdPSx1HGsg46LCDr6Wuqo46BjGkFHP0sdxznouJigo7+ljroOOqYTdAyw1FHPQcclBB0DLXXUd9Axg6BjkKWO4x10XErQMdhSRwMHHTMJOoZY6jjBQcdlBB1DLXU0dNAxy0IH1oc/18SK9P9jzXGs1421rrFONNZYxvrEWNsX6+JiTVmsx4q1TLEOKNbQxPqTWLsR6x5izUCst4e16rDOG9ZIw/piWJsL61phTSisp4S1iLCOD9bAwfoxWHsF65ZgzQ+sl4G1JrBOA9Y4wPoA8NaHLz083eGHDi9x+HDDwxr+z/BOhu8wPHvhdwuvWPiswqMU/p7wxoSvJDwZD/kZVvjLRw8edPBvg/cZfMPguQW/Kng9wScJHkPw54G3DXxh4KkCPxJ4ecAHAx4S8F+AdwHm/WPOPOabY6425jljjjDm12JuKuZ1Yk4k5hNiLh7msWEOGOZPYe4R5u1gzgvmi2CuBeYpYIw/xsdjbDnGZWNMM8YDYywtxqFiDCfGP2LsIMbdYcwaxnthrBTGGWGMDsa3YGwIxlVgTAL689EXjn5k9MGi/xJ9f+g3Q58T+mvQ14F+ArSxo30abbtoF0WbItrj0JaFdiC0oaD9AffuuO/FPSPut3Cvgut8XCPj+hLXZriuwTUBfk/xW4TzOM6BOH/g2EO9/bvyh+p8Fo/cm02d+ry8/bFyeYXkj5Vc6cdK+OF7dg9LbTGbMrrmuKJCzp77UJ4vyif/vbQwsdnh+7yygt25r6v3f+e+/zv3Revcl8uyzuM4sTh+Y9gex4ntMRzMkVWZZlewO692TfC67yVXrvATP6ndOOfV2ZY5XH/3bL/LzRbn4qt43+XhAtrtF7uK8F3OEeCQL0/O57hagEOTfDmfY64Ah6YEDtcIcGhG4HCtAIcWBA7zBDi0JHCYL8AhjcBhgQCHVgQOCwU4tCFwWCTAoS2Bw3UCHNoROCwW4NCBwOF6AQ6dCByWCHDoTOBwgwCHLgQOSwU4bMmb8zluFODQjVAflglw6EHgcJMAh14EDjcLcOhD4LBcgEM/AocVAhwGEDisFOAwiMDhFgEOQwgcVglwGEbgcKsAhxEEDqsFOIwkcLhNgMNoAoc1AhzGEjjcLsBhPIHDWgEOEwkc7hDgMJnAYZ0AhykEDncKcLiAwGG9AIcqqTmf4y4BDtMI9WGDAIfpBA53C3CYQeBwjwCHmQQO9wpwmEXgcJ8AhysIHO4X4DCbwOEBAQ5zCBweFOAwl8DhIQEOr6bkfI6HBTjMI9SHjQIcFhA4PCLAYRGBw6MCHBYTODwmwGEJgcMmAQ5LCRweF+CwjMDhCQEOmwjjxJ4U4LCcUB+eEuCwksDhaQEOqwgcnhHgsJrA4VkBDmsIHJ4T4LCWwOF5AQ7rCBxeEOCwnsDhRQEOGwgcXhLgcA+Bw8sCHO4jcHhFgMMDBA6vCnB4iMDhNQEOGwkcXhfg8CiBwxsK7Q8EDm8KcHiCwOEtAQ5PETi8LcDhGQKHdwQ4PEfg8K4AhxcIHN4T4PASgcP7AhxeIXD4QIDDawQOHwpweIPA4SMBDm8ROHwswOEdAofNAhzeI3D4RIDDBwQOWwQ4fETg8KkAh80EDlsVfHIIHD4T4LCVwGGbAIdtBA6fC3D4gsDhCwEO2wkcvhTg8DWBw3YBDt8QOHwlwGEngcPXAhx2ETjsEOCwm8DhGwEOewgcvhXg8BOBw04BDnsJHL4T4LCPwGGXAIf9BA7fC3D4ncBhtwCHAwQOPwhwOEjgsEeAQyx/zuf4UYBDCoHDTwIcchM4/CzAIS+Bw14BDvkJHH4R4FCQwGGfAIfCBA6/CnAoSuCwX4BDMQKH3wQ4lCBw+F2AQykChz8EOJQhcDggwKEcgcOfAhwqEDgcFOBQicDBqxh9DlUIHGICHKoSOOQS4FCNwCFFgEN1AodUAQ41CBxyC3CoReCQR4BDbQKHvAIc6hA45BPgUJfAIb8Ah/oEDgUEODQgcCgowKEhgUMhAQ6NCBwKC3BoTOBQRIBDEwKHogIcmhI4HCHAoRmBQzEBDi0IHIoLcGhJ4FBCgEMagUNJAQ6tCBxKCXBoQ+BQWoBDWwKHMgIc2hE4lBXg0IHAoZwAh04EDuUFOHQmcKggwKELgUNFAQ5dCRwqCXDoTuBQWYBDTwKHKgIcehM4+AIc+hI4VBXg0J/A4UgBDgMJHKoJcBhM4HCUAIehBA7VBTgMJ3A4WoDDeQQONQQ4jCJwqCnAYQyBQy0BDuMIHI4R4DCBwKG2BYcUE91MrEj//9UVPG+uiWtMXGtinon5JhaYWGhikYnrTCw2cb2JJSZuMLHUxI0mlpm4ycTNJpabWGFipYlbTKwycauJ1SZuM7HGxO0m1pq4w8Q6E3eaWG/iLhMbTNxtAuvTY212rEuONbmxHjXWYsY6xFiDF+vPYu1VrDuKNTex3iTWWsQ6g1hjD+vLYW01rCuGNbWwnhTWUsI6QlhDB+vHYO0UrBuCNTOwXgTWSsA6AfDIhz88vNHhCw5PbPhBwwsZPsDwwIX/K7xP4fsJz0v4PcLrED5/8LiDvxu8zeDrBU8r+DnBywg+PvCwgX8LvEvg2wHPCvg1wKsA8/QxRx3zszE3GfNyMScV8zExFxHz8DAHDfOvMPcI824w5wTzLTDXAOPsMcYc46sxthjjajGmFOMpMZYQ4+gwhgzjpzB2CONmMGYE4yUwVgD95OgjRv8o+gbRL4Y+IfSHoC8A7eBoA0b7J9r+0O6FNh+0d+Be/9B9rgnc3+DaHte1uKbD9Qx+y/E7hnM4zl84dlFv449clnW+mflnc/nD29cb1H78tvoraj3cMe3BGTO69a7ZYEfrqRvHzm+5be/CH9K3nVPBPs+cCsnnONbyfNQtweu+l1y5wk/8pHbzYldVyPnzkQ0Hh8/Pje/y8/LW32Uum/pSh/dd/v2w5VynYs7nOC6b32VWnPF7dFr63+B+WaVJsdj2NIvy1BX43vPlyfkc9QQ4NCF4pdQX4NCUwOF4AQ7NCBwaCHBoQeBwggCHlgQODQU4pBE4nCjAoRWBQyMBDm0IHE4S4NCWwKGxAId2BA4nC3DoQODQRIBDJwKHUwQ4dCZwaCrAoQuBw6kCHLbkJdzDCHDoRqgPzQU49CBwaCHAoReBw2kCHPoQOLQU4NCPwOF0AQ4DCBzSBDgMInA4Q4DDEAKHVgIchhE4tBbgMILAoY0Ah5EEDmcKcBhN4NBWgMNYAoezBDiMJ3BoJ8BhIoFDewEOkwkcOghwmELg0FGAwwUEDp0EOFRJzfkcZwtwmEaoD50FOEwncDhHgMMMAocuAhxmEjicK8BhFoFDVwEOVxA4dBPgMJvAobsAhzkEDj0EOMwlcOgpwOHVlJzP0UuAwzxCfegtwGEBgUMfAQ6LCBz6CnBYTODQT4DDEgKH/gIclhI4DBDgsIzAYaAAh02EcWKDBDgsJ9SHwQIcVhI4DBHgsIrAYagAh9UEDsMEOKwhcBguwGEtgcMIAQ7rCBzOE+CwnsBhpACHDQQOowQ43EPgMFqAw30EDmMEODxA4DBWgMNDBA7jBDhsJHAYL8DhUQKHCQrtDwQOEwU4PEHgMEmAw1MEDpMFODxD4HC+AIfnCBymCHB4gcBhqgCHlwgcLhDg8AqBw4UCHF4jcLhIgMMbBA7TBDi8ReBwsQCHdwgcpgtweI/A4RIBDh8QOMwQ4PARgcOlAhw2EzjMVPDJIXC4TIDDVgKHWQIcthE4XC7A4QsChysEOGwncLhSgMPXBA6zBTh8Q+BwlQCHnQQOcwQ47CJwuFqAw24Ch7kCHPYQOFwjwOEnAodrBTjsJXCYJ8BhH4HDfAEO+wkcFghw+J3AYaEAhwMEDosEOBwkcLhOgEOMsAbjYgEOKQQO1wtwyE3gsESAQ14ChxsEOOQncFgqwKEggcONAhwKEzgsE+BQlMDhJgEOxQgcbhbgUILAYbkAh1IEDisEOJQhcFgpwKEcgcMtAhwqEDisEuBQicDhVgVfVgKH1QIcqhI43CbAoRqBwxoBDtUJHG4X4FCDwGGtAIdaBA53CHCoTeCwToBDHQKHOwU41CVwWC/AoT6Bw10CHBoQOGwQ4NCQwOFuAQ6NCBzuEeDQmMDhXgEOTQgc7hPg0JTA4X4BDs0IHB4Q4NCCwOFBAQ4tCRweEuCQRuDwsACHVgQOGwU4tCFweESAQ1sCh0cFOLQjcHhMgEMHAodNAhw6ETg8LsChM4HDEwIcuhA4PCnAoSuBw1MCHLoTODwtwKEngcMzAhx6Ezg8K8ChL4HDcwIc+hM4PC/AYSCBwwsCHAYTOLwowGEogcNLAhyGEzi8LMDhPAKHVwQ4jCJweFWAwxgCh9cEOIwjcHhdgMMEAoc3LDikmOhuYkX6/+uZfeubON5EAxMnmGho4kQTjUycZKKxiZNNNDFxiommJk410cxEcxMtTJxmoqWJ002kmTjDRCsTrU20MXGmibYmzjLRzkR7Ex1MdDTRycTZJjqbOMcE1qfH2uxYlxxrcmM9aqzFjHWIsQYv1p/F2qtYdxRrbmK9Say1iHUGscYe1pfD2mpYVwxramE9KaylhHWEsIYO1o/B2ilYNwRrZmC9CKyVgHUC4JEPf3h4o8MXHJ7Y8IOGFzJ8gOGBC/9XeJ/C9xOel/B7hNchfP7gcQd/N3ibwdcLnlbwc4KXEXx84GED/xZ4l8C3A54V8GuAVwHm6WOOOuZnY24y5uViTirmY2IuIubhYQ4a5l9h7hHm3WDOCeZbYK4BxtljjDnGV2NsMcbVYkwpxlNiLCHG0WEMGcZPYewQxs1gzAjGS2CsAPrJ0UeM/lH0DaJfDH1C6A9BXwDawdEGjPZPtP2h3QttPmjvwL0+7nNxj4f7G1zb47oW13S4nsFvOX7HcA7H+QvHLupt/JErVOfrDWo/flv9FbUe7pj24IwZ3XrXbLCj9dSNY+e33LZ34Q/m/c3lPe+4iskfI9i+bsX/zZPVfsEcWZXpzYp256PuCV73veTKFX7iJ7WbF6tTMefPR29a5rD8/Nz4Lj8vb/1dpmC/+LZZfZdv8b7Lvx+2nN8ifJdvC3DIlyfnc7wjwKEJwTvkXQEOTQkc3hPg0IzA4X0BDi0IHD4Q4NCSwOFDAQ5pBA4fCXBoReDwsQCHNgQOmwU4tCVw+ESAQzsChy0CHDoQOHwqwKETgcNWAQ6dCRw+E+DQhcBhmwCHLXlzPsfnAhy6EerDFwIcehA4fCnAoReBw3YBDn0IHL4S4NCPwOFrAQ4DCBx2CHAYRODwjQCHIQQO3wpwGEbgsFOAwwgCh+8EOIwkcNglwGE0gcP3AhzGEjjsFuAwnsDhBwEOEwkc9ghwmEzg8KMAhykEDj8JcLiAwOFnAQ5VUnM+x14BDtMI9eEXAQ7TCRz2CXCYQeDwqwCHmQQO+wU4zCJw+E2AwxUEDr8LcJhN4PCHAIc5BA4HBDjMJXD4U4DDqyk5n+OgAId5hPrgVYo+hwUEDjEBDosIHHIJcFhM4JAiwGEJgUOqAIelBA65BTgsI3DII8BhE2GcWF4BDssJ9SGfAIeVBA75BTisInAoIMBhNYFDQQEOawgcCglwWEvgUFiAwzoChyICHNYTOBQV4LCBwOEIAQ73EDgUE+BwH4FDcQEODxA4lBDg8BCBQ0kBDhsJHEoJcHiUwKG0QvsDgUMZAQ5PEDiUFeDwFIFDOQEOzxA4lBfg8ByBQwUBDi8QOFQU4PASgUMlAQ6vEDhUFuDwGoFDFQEObxA4+AIc3iJwqCrA4R0ChyMFOLxH4FBNgMMHBA5HCXD4iMChugCHzQQORwtw2ELgUEOAw1YCh5oCHLYRONQS4PAFgcMxAhy2EzjUFuDwNYHDsQIcviFwqCPAYSeBw3ECHHYRONQV4LCbwKGeAIc9BA71BTj8ROBwvACHvQQODQQ47CNwOEGAw34Ch4YCHH4ncDhRgMMBAodGAhwOEjicJMAhRliTsLEAhxQCh5MFOOQmcGgiwCEvgcMpAhzyEzg0FeBQkMDhVAEOhQkcmglwKErg0FyAQzEChxYCHEoQOJwmwKEUgUNLAQ5lCBxOF+BQjsAhTYBDBQKHMwQ4VCJwaCXAoQqBQ2sBDlUJHNoIcKhG4HCmAIfqBA5tBTjUIHA4S4BDLQKHdgIcahM4tBfgUIfAoYMAh7oEDh0FONQncOgkwKEBgcPZAhwaEjh0FuDQiMDhHAEOjQkcughwaELgcK4Ah6YEDl0FODQjcOgmwKEFgUN3AQ4tCRx6CHBII3DoKcChFYFDLwEObQgcegtwaEvg0EeAQzsCh74CHDoQOPQT4NCJwKG/AIfOBA4DBDh0IXAYKMChK4HDIAEO3QkcBgtw6EngMESAQ28Ch6ECHPoSOAwT4NCfwGG4AIeBBA4jBDgMJnA4T4DDUAKHkQIchhM4jBLgcB6Bw2gBDqMIHMYIcBhD4DBWgMM4AodxAhwmEDiMt+CQYqKHiRXp/3+noue9a+I9E++b+MDEhyY+MvGxic0mPjGxxcSnJraa+MzENhOfm/jCxJcmtpv4ysTXJnaY+MbEtyZ2mvjOxC4T35vYbeIHE3tM/GjiJxM/m9hr4hcT+0xgfXqszY51ybEmN9ajxlrMWIcYa/Bi/VmsvYp1R7HmJtabxFqLWGcQa+xhfTmsrYZ1xbCmFtaTwlpKWEcIa+hg/RisnYJ1Q7BmBtaLwFoJWCcAHvnwh4c3OnzB4YkNP2h4IcMH+JAHrgl4n8L3E56X8HuE1yF8/uBxB383eJvB1wueVvBzgpcRfHzgYQP/FniXwLcDnhXwa4BXAebpY4465mdjbjLm5WJOKuZjYi4i5uFhDhrmX2HuEebdYM4J5ltgrgHG2WOMOcZXY2wxxtViTCnGU2IsIcbRYQwZxk9h7BDGzWDMCMZLYKwA+snRR4z+UfQNol8MfULoD0FfANrB0QaM9k+0/aHdC20+aO/AvT7uc3GPh/sbXNvjuhbXdLiewW85fsdwDsf5C8cu6m38kcuyzjc1/2wuf3j7eoPaj99Wf0WthzumPThjRrfeNRvsaD1149j5LbftXfhD+rZvV7TP83bF5HNMsDwf9Ujwuu8lV67wEz+p3bzYWxUJ57xKdjksPz83vsvPy1t/l6k29WUi77v8+2HLeWKlnM8xSYBDvjw5n2OyAIcmBO+Q8wU4NCVwmCLAoRmBw1QBDi0IHC4Q4NCSwOFCAQ5pBA4XCXBoReAwTYBDGwKHiwU4tCVwmC7AoR2BwyUCHDoQOMwQ4NCJwOFSAQ6dCRxmCnDoQuBwmQCHLXlzPscsAQ7dCPXhcgEOPQgcrhDg0IvA4UoBDn0IHGYLcOhH4HCVAIcBBA5zBDgMInC4WoDDEAKHuQIchhE4XCPAYQSBw7UCHEYSOMwT4DCawGG+AIexBA4LBDiMJ3BYqNDvT+CwSIDDZAKH6wQ4TCFwWCzA4QICh+sFOFRJzfkcSwQ4TCPUhxsEOEwncFgqwGEGgcONAhxmEjgsE+Awi8DhJgEOVxA43CzAYTaBw3IBDnMIHFYIcJhL4LBSgMOrKTmf4xYBDvMI9WGVAIcFBA63CnBYROCwWoDDYgKH2wQ4LCFwWCPAYSmBw+0CHJYROKwV4LCJME7sDgEOywn1YZ0Ah5UEDncKcFhF4LBegMNqAoe7BDisIXDYIMBhLYHD3QIc1hE43CPAYT2Bw70CHDYQONwnwOEeAof7BTjcR+DwgACHBwgcHhTg8BCBw0MCHDYSODwswOFRAoeNCu0PBA6PCHB4gsDhUQEOTxE4PCbA4RkCh00CHJ4jcHhcgMMLBA5PCHB4icDhSQEOrxA4PCXA4TUCh6cFOLxB4PCMAIe3CByeFeDwDoHDcwIc3iNweF6AwwcEDi8IcPiIwOFFAQ6bCRxeUvDJIXB4WYDDVgKHVwQ4bCNweFWAwxcEDq8JcNhO4PC6AIevCRzeEODwDYHDmwIcdhI4vCXAYReBw9sCHHYTOLwjwGEPgcO7Ahx+InB4T4DDXgKH9wU47CNw+ECAw34Chw8FOPxO4PCRAIcDBA4fC3A4SOCwWYBDjLAm4ScCHFIIHLYIcMhN4PCpAIe8BA5bBTjkJ3D4TIBDQQKHbQIcChM4fC7AoSiBwxcCHIoROHwpwKEEgcN2AQ6lCBy+EuBQhsDhawEO5QgcdghwqEDg8I0Ah0oEDt8q+LISOOwU4FCVwOE7AQ7VCBx2CXCoTuDwvQCHGgQOuwU41CJw+EGAQ20Chz0CHOoQOPwowKEugcNPAhzqEzj8LMChAYHDXgEODQkcfhHg0IjAYZ8Ah8YEDr8KcGhC4LBfgENTAoffBDg0I3D4XYBDCwKHPwQ4tCRwOCDAIY3A4U8BDq0IHA4KcGhD4OBVjj6HtgQOMQEO7Qgccglw6EDgkCLAoROBQ6oAh84EDrkFOHQhcMgjwKErgUNeAQ7dCRzyCXDoSeCQX4BDbwKHAgIc+hI4FBTg0J/AoZAAh4EEDoUFOAwmcCgiwGEogUNRAQ7DCRyOEOBwHoFDMQEOowgcigtwGEPgUEKAwzgCh5ICHCYQOJSy4JBioqeJFen/n2zaus83McXEVBMXmLjQxEUmppm42MR0E5eYmGHiUhMzTVxmYpaJy01cYeJKE7NNXGVijomrTcw1cY2Ja03MMzHfxAITC00sMnGdicUmrjexxMQNJpaawPr0WJsd65JjTW6sR421mLEOMdbgxfqzWHsV645izU2sN4m1FrHOINbYw/pyWFsN64phTS2sJ4W1lLCOENbQwfoxWDsF64ZgzQysF4G1ErBOADzy4Q8Pb3T4gsMTG37Q8EKGDzA8cOH/Cu9T+H7C8xJ+j/A6hM8fPO7g7wZvM/h6wdMKfk7wMoKPDzxs4N8C7xL4dsCzAn4N8CrAPH3MUcf8bMxNxrxczEnFfEzMRcQ8PMxBw/wrzD3CvBvMOcF8C8w1wDh7jDHH+GqMLca4WowpxXhKjCXEODqMIcP4KYwdwrgZjBnBeAmMFUA/OfqI0T+KvkH0i6FPCP0h6AtAOzjagNH+ibY/tHuhzQftHbjXx30u7vFwf4Nre1zX4poO1zP4LcfvGM7hOH/h2EW9jT9yWdb5zeUNm/KHt683qP34bfVX1Hq4Y9qDM2Z0612zwY7WUzeOnd9y296FP5j3sf2kSvZ5sE+yOUpbno96Jnjd95IrV/iJn9RuXmxipZw/H9lwcPl8fJefl3erM/Fts/ouy1hoQPlT0v/G98vm9/uPz7bYL5YvT87nKMur54eT2u0Xa0Lw0SgnwKEpgUN5AQ7NCBwqCHBoQeBQUYBDSwKHSgIc0ggcKgtwaEXgUEWAQxsCB1+AQ1sCh6oCHNoROBwpwKEDgUM1AQ6dCByOEuDQmcChugCHLgQORwtw2JI353PUEODQjVAfagpw6EHgUEuAQy8Ch2MEOPQhcKgtwKEfgcOxAhwGEDjUEeAwiMDhOAEOQwgc6gpwGEbgUE+AwwgCh/oCHEYSOBwvwGE0gUMDAQ5jCRxOEOAwnsChoQCHiQQOJwpwmEzg0EiAwxQCh5MEOFxA4NBYgEOV1JzPcbIAh2mE+tBEgMN0AodTBDjMIHBoKsBhJoHDqQIcZhE4NBPgcAWBQ3MBDrMJHFoIcJhD4HCaAIe5BA4tBTi8mpLzOU4X4DCPUB/SBDgsIHA4Q4DDIgKHVgIcFhM4tBbgsITAoY0Ah6UEDmcKcFhG4NBWgMMmwjixswQ4LCfUh3YCHFYSOLQX4LCKwKGDAIfVBA4dBTisIXDoJMBhLYHD2QIc1hE4dBbgsJ7A4RwBDhsIHLoIcLiHwOFcAQ73ETh0FeDwAIFDNwEODxE4dBfgsJHAoYcAh0cJHHoqtD8QOPQS4PAEgUNvAQ5PETj0EeDwDIFDXwEOzxE49BPg8AKBQ38BDi8ROAwQ4PAKgcNAAQ6vETgMEuDwBoHDYAEObxE4DBHg8A6Bw1ABDu8ROAwT4PABgcNwAQ4fETiMEOCwmcDhPAWfHAKHkQIcthI4jBLgsI3AYbQAhy8IHMYIcNhO4DBWgMPXBA7jBDh8Q+AwXoDDTgKHCQIcdhE4TBTgsJvAYZIAhz0EDpMFOPxE4HC+AIe9BA5TBDjsI3CYKsBhP4HDBQIcfidwuFCAwwECh4sEOBwkcJgmwCFGWJ/vYgEOKQQO0wU45CZwuESAQ14ChxkCHPITOFwqwKEggcNMAQ6FCRwuE+BQlMBhlgCHYgQOlwtwKEHgcIUAh1IEDlcKcChD4DBbgEM5AoerBDhUIHCYI8ChEoHD1Qq+rAQOcwU4VCVwuEaAQzUCh2sFOFQncJgnwKEGgcN8AQ61CBwWCHCoTeCwUIBDHQKHRQIc6hI4XCfAoT6Bw2IBDg0IHK4X4NCQwGGJAIdGBA43CHBoTOCwVIBDEwKHGwU4NCVwWCbAoRmBw00CHFoQONwswKElgcNyAQ5pBA4rBDi0InBYKcChDYHDLQIc2hI4rBLg0I7A4VYBDh0IHFYLcOhE4HCbAIfOBA5rBDh0IXC4XYBDVwKHtQIcuhM43CHAoSeBwzoBDr0JHO4U4NCXwGG9AIf+BA53CXAYSOCwQYDDYAKHuwU4DCVwuEeAw3ACh3sFOJxH4HCfAIdRBA73C3AYQ+DwgACHcQQODwpwmEDg8FBluxy5LD9/c3nP+7x88ttvSd8+rKPeoPbjt9VfUevhjmkPzpjRrXfNBjtaT904dn7LbXsX/mDef9hShy2n5uafj0y5UizL1dxi24/KJ7/txuT1xv7+x0t+nxbpOTy7/bxUEwVM5E70oZZlaObZ13+XPKd6nDxNvZw/1j6xPNY+LX/4Bd+zf9gyqFvR7rwbfzySXhcfrXw4p3Vyi4Pm0GenpP99JH0/VO4ioYK5fEnbLL+kbZZf0sGDB39N9LrvZZ0P/wT1PZYOflNl759QHkv/JoKvbQoAtv1y4mBsz/xdqufsmX+LY7nOtSxX/JGafJ4FJk/sscrJl2mTxa+GBddYslrjFdOWJQ7cxxx+jfCwPUCHl/W8xRYH6Giz/XyH+vF45ZzXcb2FjjGOOp4g6FhioWOso44nCTpusNAxzlHHUwQdSy10jHfU8TRBx40WOiY46niGoGOZhY6JjjqeJei4yULHJEcdzxF03GyhY7KjjucJOpZb6DjfUccLBB0rLHRMcdTxIkHHSgsdUx11vETQcYuFjgscdbxM0LHKQseFjjpeIei41ULHRY46XiXoWG2hY5qjjtcIOm6z0HGxo47XCTrWWOiY7qjjDYKO2y10XOKo402CjrUWOmY46niLoOMOCx2XOup4m6BjnYWOmY463iHouNNCx2WOOt4l6FhvoWOWo473CDrustBxuaOO9wk6NljouMJRxwcEHXdb6LjSUceHBB33WOiY7ajjI4KOey10XOWo42OCjvssdMxx1LGZoON+Cx1XO+r4hKDjAQsdcx11bCHoeNBCxzWOOj4l6HjIQse1jjq2EnQ8bKFjnqOOzwg6NlromO+oYxtBxyMWOhY46vicoONRCx0LHXV8QdDxmIWORY46viTo2GSh4zpHHdsJOh630LHYUcdXBB1PWOi43lHH1wQdT1roWOKoYwdBx1MWOm5w1PENQcfTFjqWOur4lqDjGQsdNzrq2EnQ8ayFjmWOOr4j6HjOQsdNjjp2EXQ8b6HjZkcd3xN0vGChY7mjjt0EHS9a6FjhqOMHgo6XLHSsdNSxh6DjZQsdtzjq+JGg4xULHascdfxE0PGqhY5bHXX8TNDxmoWO1Y469hJ0vG6h4zZHHb8QdLxhoWONo459BB1vWui43VHHrwQdb1noWOuoYz9Bx9sWOu5w1PEbQcc7FjrWOer4naDjXQsddzrq+IOg4z0LHesddRyw0IF5Sb28v2Zh4oE5F5ivgLH+GCePMeYYn42xzRgXjDG1GI+KsZwYB4kxhBh/h7FrGPeFMVMYb4SxOhjngjEiGF+BsQno10efOPqT0ReLfkz0AaL/DH1P6LdBnwf6C9DWjnZqtPGifRRti2iXQ5sW2oPQloJ2CNzD4/4X946478I9C673ca2M60xco+H6BtcG+F3FbxLO5zgX4jyCYxD1F9/9gcqJ+diw/zN59vks5g/lOzeH53Bh/hDKblvXDiav99Dx0ivB675n97DVZlNG1xxeFbtjrrf3f8dc+JizPZ/iOwpOWE1mjhy+J9s8we82qxyxKnbHQ+8Er/tekuUKPfGT2o1zPNhwCD5sz7e5qvzn59vY3/94dudblN32fJvCq1+HC2u3XyylSs7nSBXgkC9PzufILcChSb6cz5FHgENTAoe8AhyaETjkE+DQgsAhvwCHlgQOBQQ4pBE4FBTg0IrAoZAAhzYEDoUFOLQlcCgiwKEdgUNRAQ4dCByOEODQicChmACHzgQOxQU4dCFwKCHAYUvenM9RUoBDN0J9KCXAoQeBQ2kBDr0IHMoIcOhD4FBWgEM/AodyAhwGEDiUF+AwiMChggCHIQQOFQU4DCNwqCTAYQSBQ2UBDiMJHKoIcBhN4OALcBhL4FBVgMN4AocjBThMJHCoJsBhMoHDUQIcphA4VBfgcAGBw9ECHKqk5nyOGgIcphHqQ00BDtMJHGoJcJhB4HCMAIeZBA61BTjMInA4VoDDFQQOdQQ4zCZwOE6AwxwCh7oCHOYSONQT4PBqSs7nqC/AYR6hPhwvwGEBgUMDAQ6LCBxOEOCwmMChoQCHJQQOJwpwWErg0EiAwzICh5MEOGwijBNrLMBhOaE+nCzAYSWBQxMBDqsIHE4R4LCawKGpAIc1BA6nCnBYS+DQTIDDOgKH5gIc1hM4tBDgsIHA4TQBDvcQOLQU4HAfgcPpln47fbzDfjvwTIBfAObKY5445khjfjDmxmJeKOZEYj4g5sJhHhjmQGH+D+a+YN4H5jxgvD/GumOcN8Y4Y3wvxrZiXCfGNGI836GxbCYwhgnjdzB2BeM2MGYB/fXoq0Y/Lfoo0T+Hvin0y6BPAu3xaItGOyzaINH+hrYntLugzQH327jXxH0W7jFwfY1rS1xX4ZoCv6f4LcF5FOcQHD+oO+AWf9j64DTz7P124NNhmyfo7ZFVjjTL46FPgtd9L7lyhZ/4Se3G8UNJc8iBh63fzhnJ58kpv51D1cmWD+oiyh7eLyu9rXj163Bh7faLtSLUr9YCHBh+O20EODD8ds4U4MDw22krwIHht3OWAAeG3047AQ4Mv532AhwYfjsdFK4fCBw6CnBg+O10EuDA8Ns5W4ADw2+nswAHht/OOQIcGH47XQQ4MPx2zhXgwPDb6SrAgeG3002AA8Nvp7sAB4bfTg8BDgy/nZ4CHBh+O70EODD8dnoLcGD47fQR4MDw2+krwIHht9NPgAPDb6e/AAeG384AAQ4Mv52BAhwYfjuDBDgw/HYGC3Bg+O0MEeDA8NsZKsCB4bczTIADw29nuAAHht/OCAEODL+d8wQ4MPx2RgpwYPjtjBLgwPDbGS3AgeG3M0aAA8NvZ6wAB4bfzjgBDgy/nfECHBh+OxMEODD8diYKcGD47UwS4MDw25kswIHht3O+AAeG384UAQ4Mv52pAhwYfjsXCHBg+O1cKMCB4bdzkQAHht/ONAEODL+diwU4MPx2pgtwYPjtXCLAgeG3M0OAA8Nv51IBDgy/nZkCHBh+O5cJcGD47cwS4MDw27lcgAPDb+cKAQ4Mv50rLTjAU6Svd9hvB54J8AvAXHnME8ccacwPxtxYzAvFnEjMB8RcOMwDwxwozP/B3BfM+8CcB4z3x1h3jPPGGGeM78XYVozrxJhGjOfDWDaM48IYJozfwdgVjNvAmAX016OvGv206KNE/xz6ptAvgz4JtMejLRrtsGiDRPsb2p7Q7oI2B9xv414T91m4x8D1Na4tcV2Fawr8nuK3BOdRnENw/KDugFv8YeuDc6pn77cDnw7bPEFvj6xyzLY8HvomeN33kitX+Imf1G4cP5TZDjnwsPXbuSr5PDnlt3OoyLZ8UBdR9vB+Wemdw6tfhwtrt19sDqF+XS3AgeG3M1eAA8Nv5xoBDgy/nWsFODD8duYJcGD47cwX4MDw21kgwIHht7NQgAPDb2eRAAeG3851AhwYfjuLBTgw/HauF+DA8NtZIsCB4bdzgwAHht/OUgEODL+dGwU4MPx2lglwYPjt3CTAgeG3c7MAB4bfznIBDgy/nRUCHBh+OysFODD8dm4R4MDw21klwIHht3OrAAeG385qAQ4Mv53bBDgw/HbWCHBg+O3cLsCB4bezVoADw2/nDgEODL+ddQIcGH47dwpwYPjtrBfgwPDbuUuAA8NvZ4MAB4bfzt0CHBh+O/cIcGD47dwrwIHht3OfAAeG3879AhwYfjsPCHBg+O08qDCumMDhIQEODL+dhwU4MPx2NgpwYPjtPCLAgeG386gAB4bfzmMCHBh+O5sEODD8dh4X4MDw23lCgAPDb+dJAQ4Mv52nBDgw/HaeFuDA8Nt5RoADw2/nWQEODL+d5wQ4MPx2nhfgwPDbeUGAA8Nv50UBDgy/nZcEODD8dl4W4MDw23lFgAPDb+dVCw4w6OjnHfbbgWcC/AIwVx7zxDFHGvODMTcW80IxJxLzATEXDvPAMAcK838w9wXzPjDnAeP9MdYd47wxxhnjezG2FeM6MaYR4/kwlg3juDCGCeN3MHYF4zYwZgH99eirRj8t+ijRP4e+KfTLoE8C7fFoi0Y7LNog0f6Gtie0u6DNAffbuNfEfRbuMXB9jWtLXFfhmgK/p/gtwXkU5xAcP6g74BZ/2Prg1K1o77cDnw7bPEFvj6xyvGZ5PPRL8LrvJVeu8BM/qd04fiivOeTAw9Zv5/Xk8+SU304q/rHlg7qIsof3y0rvG7z6dbiwdvvF3iDUrzcFODD8dt4S4MDw23lbgAPDb+cdAQ4Mv513BTgw/HbeE+DA8Nt5X4ADw2/nAwEODL+dDwU4MPx2PhLgwPDb+ViAA8NvZ7MAB4bfzicCHBh+O1sEODD8dj4V4MDw29kqwIHht/OZAAeG3842AQ4Mv53PBTgw/Ha+EODA8Nv5UoADw29nuwAHht/OVwIcGH47XwtwYPjt7BDgwPDb+UaAA8Nv51sBDgy/nZ0CHBh+O98JcGD47ewS4MDw2/legAPDb2e3AAeG384PAhwYfjt7BDgw/HZ+FODA8Nv5SYADw2/nZwEODL+dvQIcGH47vwhwYPjt7BPgwPDb+VWAA8NvZ78AB4bfzm8CHBh+O78LcGD47fwhwIHht3NAgAPDb+dPAQ4Mv52DAhwYfjvYMMlt/zMODL+dmB99Dgy/nVx+9Dkw/HZS/OhzYPjtpPrR58Dw28ntR58Dw28njx99Dgy/nbx+9Dkw/Hby+dHnwPDbye9HnwPDb6eAH30ODL+dgn70OTD8dgr50efA8Nsp7EefA8Nvp4gffQ4Mv52ifvQ5MPx2jvCTz2GaCb3+3mG/HXgmwC8Ac+UxTxxzpDE/GHNjMS8UcyIxHxBz4TAPDHOgMP8Hc18w7wNzHjDeH2PdMc4bY5wxvhdjWzGuE2MaMZ4PY9kwjgtjmDB+B2NXMG4DYxbQX4++avTToo8S/XPom0K/DPok0B6Ptmi0w6INEu1vaHuC6JgJ3G/jXhP3WbjHwPU1ri1xXYVrCvye4rcE51GcQ3D8oO6AW/xh64PT1LP323nTwW/nTQu/nWK+3fHQP8HrvpdcucJP/KR24/ih2HAIPlJCebLiXTz5PDnlt5Mb/9jyQV1E2cP7ZaW3hE+rX4cLa7dfzKaMrjlK+tHnwPDbKeVHnwPDb6e0H30ODL+dMn70OTD8dsr60efA8Nsp50efA8Nvp7wffQ4Mv50KfvQ5MPx2KvrR58Dw26nkR58Dw2+nsh99Dgy/nSp+9Dkw/HZ8P/ocGH47Vf3oc2D47RzpR58Dw2+nmh99Dgy/naP86HNg+O1U96PPgeG3c7QffQ4Mv50afvQ5MPx2avrR58Dw26nlR58Dw2/nGD/6HBh+O7X96HNg+O0c60efA8Nvp44ffQ4Mv53j/OhzYPjt1PWjz4Hht1PPjz4Hht9OfT/6HBh+O8f70efA8Ntp4EefA8Nv5wQ/+hwYfjsN/ehzYPjtnOhHnwPDb6eRH30ODL+dk/zoc2D47TT2o8+B4bdzsh99Dgy/nSZ+9Dkw/HZO8aPPgeG309SPPgeG386pfvQ5MPx2mvnR58Dw22nuR58Dw2+nhR99Dgy/ndP86HNg+O209KPPgeG3c7offQ4Mv500P/ocGH47Z/jR58Dw22nlR58Dw2+ntR99Dgy/nTZ+9Dkw/HbO9KPPgeG309aPPgeG385ZfvQ5MPx22vnR58Dw22nvR58Dw2+ngx99Dgy/nY5+9Dkw/HY6+dHnwPDbOduPPgeG305nP/ocGH475/jJ54CnyADvsN8OPBPgF4C58pgnjjnSmB+MubGYF4o5kZgPeGgunImqJjD/B3NfMO8Dcx4w3h9j3THOG2OcMb4XY1sxrhNjGjGeD2PZMI4LY5gwfgdjVzBuA2MW0F+Pvmr006KPEv1z6JtCvwz6JNAej7bo5iZamED7G9qe0O6CNgfcb+NeE/dZuMfA9TWuLXFdhWsK/J7itwTnUZxDcPyg7oBb/GHrgwPPkkct/Xbg02GbJ+jtkVWOLr7d8TAgweu+l1y5wk/8pHbj+KHYcAg+bP12zk0+T0757eTBP7Z8UBdR9vB+Went6tPq1+HC2u0Xsymja45uvl0O22N+c3nP+6R88ttvMdt+Wt7+++zuR//7ZPgG9fCjz4HhG9TTjz4Hhm9QLz/6HBi+Qb396HNg+Ab18aPPgeEb1NePPgeGb1A/P/ocGL5B/f3oc2D4Bg3wo8+B4Rs00I8+B4Zv0CA/+hwYvkGD/ehzYPgGDfGjz4HhGzTUjz4Hhm/QMD/6HBi+QcP96HNg+AaN8KPPgeEbdJ4ffQ4M36CRfvQ5MHyDRvnR58DwDRrtR58DwzdojB99DgzfoLF+9DkwfIPG+dHnwPANGu9HnwPDN2iCH30ODN+giX70OTB8gyb50efA8A2a7EefA8M36Hw/+hwYvkFT/OhzYPgGTfWjz4HhG3SBH30ODN+gC/3oc2D4Bl3kR58Dwzdomh99DgzfoIv96HNg+AZN96PPgeEbdIkffQ4M36AZfvQ5MHyDLvWjz4HhGzTTjz4Hhm/QZX70OTB8g2b50efA8A263I8+B4Zv0BV+9DkwfIOu9KPPgeEbNNuPPgeGb9BVfvQ5MHyD5vjR58DwDbrajz4Hhm/QXD/6HBi+Qdf40efA8A261o8+B4Zv0Dw/+hwYvkHz/ehzYPgGLfCjz4HhG7TQjz4Hhm/QIj/6HBi+Qdf50efA8A1a7EefA8M36Ho/+hwYvkFL/OhzYPgG3eAnnwPeKAO9w75B8EyAXwDmymOeOOZIY35wPxP9TWBOJOYDYi4c5oFhDhTm/2DuC+Z9YM4DxvtjrDvGeWOMM8b3YmwrxnViTCPG82EsG8ZxYQwTxu9g7ArGbWDMAvrr0VeNflr0UaJ/7hITM0ygTwLt8WiLRjss2iDR/oa2J7S7oM0B99u418R9Fu4xcH2Na0tcV+GaAr+n+C3BeRTnEBw/qDvgFn/kSv8bfykZHyAL/5BDXi3w6QjnyWq/YI6syrTUtzseBiZ43feSK1f4iZ/UbhxfFxsOwYetb9CNyefJKd+gvPjHlg/qIsoe3i8rvct8Wv06XFi7/WI2ZXTNcZMffQ4Mv52b/ehzYPjtLPejz4Hht7PCjz4Hht/OSj/6HBh+O7f40efA8NtZ5UefA8Nv51Y/+hwYfjur/ehzYPjt3OZHnwPDb2eNH30ODL+d2/3oc2D47az1o8+B4bdzhx99Dgy/nXV+9Dkw/Hbu9KPPgeG3s96PPgeG385dfvQ5MPx2NvjR58Dw27nbjz4Hht/OPX70OTD8du71o8+B4bdznx99Dgy/nfv96HNg+O084EefA8Nv50E/+hwYfjsP+dHnwPDbediPPgeG385GP/ocGH47j/jR58Dw23nUjz4Hht/OY370OTD8djb50efA8Nt53I8+B4bfzhN+9Dkw/Hae9KPPgeG385QffQ4Mv52n/ehzYPjtPONHnwPDb+dZP/ocGH47z/nR58Dw23nejz4Hht/OC370OTD8dl70o8+B4bfzkh99Dgy/nZf96HNg+O284kefA8Nv51U/+hwYfjuv+dHnwPDbed2PPgeG384bfvQ5MPx23vSjz4Hht/OWH30ODL+dt/3oc2D47bzjR58Dw2/nXT/6HBh+O+/50efA8Nt5348+B4bfzgd+9Dkw/HY+9KPPgeG385EffQ4Mv52P/ehzYPjtbPajz4Hht/OJH30ODL+dLX7yOUwzoTfIO+y3A88E+AWsMLHSBOZIY34w5sZiXijmRGI+IObCYR4Y5kBh/g/mvmDeB+Y8YLw/xrpjnDfGOGN8L8a2YlwnxjRiPB/GsmEcF8YwYfwOxq5g3AbGLKC//kkTT5lAHyX659A3hX4Z9EmgPR5t0WiHRRsk2t/Q9oR2F7Q54H4b95q4z8I9Bq6vcW2J6ypcU+D3FL8lOI/iHILjB3UH3OIPWx8ceJY8Uvnw9sn488CnwzZP0Nsjqxyf+nbHw6AEr/tecuUKP/GT2o3jh2LDIfhICeXJivfW5PPELPx2YhZ+O7G///Hs6i7KHt4vK72f+clzxWenpP9NtJ+Lv1Wy227z7eux59l//5/7//n3/9cO3j/LndXm8XOXyzkvvm1WbL7w3epKcD/b8m0ub+p1eYvfzfTtbY+DL32778dFx2eWOj5z0LHdp/1eHC6s3X4U36iv/OhzYPhGfe1HnwPDN2qHH30ODN+ob/zoc2D4Rn3rR58Dwzdqpx99DgzfqO/86HNg+Ebt8qPPgeEb9b0ffQ4M36jdfvQ5MHyjfvCjz4HhG7XHjz4Hhm/Uj370OTB8o37yo8+B4Rv1sx99DgzfqL1+9DkwfKN+8aPPgeEbtc+PPgeGb9SvfvQ5MHyj9vvR58DwjfrNjz4Hhm/U7370OTB8o/7wo8+B4Rt1wI8+B4Zv1J9+9DkwfKMO+tHnwPCN8qpGnwPDNyomwIHhG5VLgAPDNypFgAPDNypVgAPDNyq3AAeGb1QeAQ4M36i8AhwYvlH5BDgwfKPyC3Bg+EYVEODA8I0qKMCB4RtVSIADwzeqsAAHhm9UEQEODN+oogIcGL5RRwhwYPhGFRPgwPCNKi7AgeEbVUKAA8M3qqQAB4ZvVCkBDgzfqNICHBi+UWUEODB8o8oKcGD4RpUT4MDwjSovwIHhG1VBgAPDN6qiAAeGb1QlAQ4M36jKAhwYvlFVBDgwfKN8AQ4M36iqAhwYvlFHCnBg+EZVE+DA8I06SoADwzeqelW7HLafD7+Qz/z/3S8rX4pdOex/ss3/y7vF1oPm6OR5xWw1hMuS1efDI6RM5eS3h0fIw5Xtv4saVe3r4aGElnlqZp0nV/CzC5lIDfwf42Twt2X6/+EbEkv/3Ph2tczzY0zUNnFs+usFvcNlzaz8WTxitaq6H6/WydK8nD1AcODCiMf2S9yTwwdud/8vcyfbcv1Y3f7LwcPWEKqOxQnCglXsxxw2BEN9QtltuR5nUenx2XGTp0T72Z6M0yy2rVvVjl/8Yfv91/vvv/9DDxdjLwtTq0M/oNjetr7Ur5rzOrb7djqwva2O43P4wgnlwsWG7THRIEIXKPguLC4eDmmu4XAOOsHhhxcPW7bBbbPScobHKVPMS75MrTxOmXJ5yZeptccpU4qXfJnaeP9OmbLKc6aXfPnLpf47F+FZbd7Wy945IZnf7OBvQDK/2/Wr2us4y8t5Hcdb6jjeQUc7j1MX23vJa6lEqosdPE6ejh4nTyePk+dsj5Ons8fJc47HydPF4+Q51+Pk6epx8nTzOHm6e5w8PTxOnp4eJ08vj5Ont8fJ08fj5OnrcfL08zh5+nucPAM8Tp6BHifPII+TZ7DHyTPE4+QZ6nHyDPM4eYZ7nDwjPE6e8zxOnpEeJ88oj5NntMfJM8bj5BnrcfKM8zh5xnucPBM8Tp6JHifPJI+TZ7LHyXO+x8kzxePkmepx8lzgcfJc6HHyXORx8kzzOHku9jh5pnucPJd4nDwzPE6eSz1OnpkeJ89lHifPLI+T53KPk+cKj5PnSo+TZ7bHyXOVx8kzx+Pkudrj5JnrcfJc43HyXOtx8szzOHnme5w8CzxOnoUeJ88ij5PnOo+TZ7HHyXO9x8mzxOPkucHj5FnqcfLc6HHyLPM4eW7yOHlu9jh5lnucPCs8Tp6VHifPLR4nzyqPk+dWj5NntcfJc5vHybPG4+S53ePkWetx8tzhcfKs8zh57vQ4edZ7nDx3eZw8GzxOnrs9Tp57PE6eez1Onvs8Tp77PU6eBzxOngc9Tp6HPE6ehz1Ono0eJ88jHifPox4nz2MeJ88mj5PncY+T5wmPk+dJj5PnKY+T52mPk+cZj5PnWY+T5zmPk+d5j5PnBY+T50WPk+clj5PnZY+T5xWPk+dVj5PnNY+T53WPk+cNj5PnTY+T5y2Pk+dtj5PnHY+T512Pk+c9j5PnfY+T5wOPk+dDj5PnI4+T52OPk2ezx8nzicfJs8Xj5PnU4+TZ6nHyfOZx8mzzOHk+9zh5vvA4eb70OHm2e5w8X3mcPF97nDw7PE6ebzxOnm89Tp6dHifPdx4nzy6Pk+d7j5Nnt8fJ84PHybPH4+T50ePk+cnj5PnZ4+TZ63Hy/OJx8uzzOHl+9Th59nucPL95nDy/e5w8f3icPAc8Tp4/PU6egx4nD3ZIctvQjnZ5YqQ8uUh5Ukh5Ukl5cpPy5CHlyUvKk4+UJz8pTwFSnoKkPIVIeQqT8hQh5SlKynMEKU8xUp7ipDwlSHlKkvKUIuUpTcpThpSnLClPOVKe8qQ8FUh5KpLyVCLlqUzKU4WUxyflqUrKc6RlnvDnJ+O9i8U2bMtVjaT/KIL+eg76q5P0H03KU4OUpyYpTy1SnmNIeWqT8hxLylOHlOc4Up66pDz1SHnqk/IcT8rTgJTnBFKehqQ8J5LyNCLlOYmUpzEpz8mkPE1IeU4h5WlKynMqKU8zUp7mpDwtSHlOI+VpScpzOilPGinPGaQ8rUh5WpPytCHlOZOUpy0pz1mkPO1IedqT8nQg5elIytOJlOdsxzzZWd8zqzJ1tiyTbVmwluFXfvLbP1458Tq1Wek4h6DjawsdTzjq6ELQscNCx5OOOs4l6PjGQsdTjjq6EnR8a6HjaUcd3Qg6dlroeMZRR3eCju8sdDzrqKMHQccuCx3POeroSdDxvYWO5x119CLo2G2h4wVHHb0JOn6w0PGio44+BB17LHS85KijL0HHjxY6XnbU0Y+g4ycLHa846uhP0PGzhY5XHXUMIOjYa6HjNUcdAwk6frHQ8bqjjkEEHfssdLzhqGMwQcevFjredNQxhKBjv4WOtxx1DCXo+M1Cx9uOOoYRdPxuoeMdRx3DCTr+sNDxrqOOEQQdByx0vOeo4zyCjj8tdLzvqGMkQcdBCx0fOOoYRdDhVU1++w8ddYwm6IhZ6PjIUccYgo5cFjo+dtQxlqAjxULHZkcd4wg6Ui10fOKoYzxBR24LHVscdUwg6MhjoeNTRx0TCTryWujY6qhjEkFHPgsdnznqmEzQkd9CxzZHHecTdBSw0PG5o44pBB0FLXR84ahjKkFHIQsdXzrquICgo7CFju2OOi4k6ChioeMrRx0XEXQUtdDxtaOOaQQdR1jo2OGo42KCjmIWOr5x1DGdoKO4hY5vHXVcQtBRwkLHTkcdMwg6Slro+M5Rx6UEHaUsdOxy1DGToKO0hY7vHXVcRtBRxkLHbkcdswg6ylro+MFRx+UEHeUsdOxx1HEFQUd5Cx0/Ouq4kqCjgoWOnxx1zCboqGih42dHHVcRdFSy0LHXUcccgo7KFjp+cdRxNUFHFQsd+xx1zCXo8C10/Oqo4xqCjqoWOvY76riWoONICx2/OeqYR9BRzULH74465hN0HGWh4w9HHQsIOqpb6DjgqGNhDuvAXJQGFjrqVv1re1sdi3JYx+by5rq9cvLbbzHbf1XeXsd1BB3lLHV87aBjMUFHeUsdOxx0XE/QUcFSxzcOOpYQdFS01PGtg44bCDoqWerY6aBjKUFHZUsd3znouJGgo4qljl0OOpYRdPiWOr530HETQUdVSx27HXTcTNBxpKWOHxx0LCfoqGapY4+DjhUEHUdZ6vjRQcdKgo7qljp+ctBxC0HH0ZY6fnbQsYqgo4aljr0OOm4l6KhpqeMXBx2rCTpqWerY56DjNoKOYyx1/OqgYw1BR21LHfsddNxO0HGspY7fHHSsJeioY6njdwcddxB0HGep4w8HHesIOupa6jjgoONOgo56ljr+dNCxnqCjvqWOgw467iLoON5Sh1fBXscGgo4GljpiDjruJug4wVJHLgcd9xB0NLTUkeKg416CjhMtdaQ66LiPoKORpY7cDjruJ+g4yVJHHgcdDxB0NLbUkddBx4MEHSdb6sjnoOMhgo4mljryO+h4mKDjFEsdBRx0bCToaGqpo6CDjkcIOk611FHIQcejBB3NLHUUdtDxGEFHc0sdRRx0bCLoaGGpo6iDjscJOk6z1HGEg44nCDpaWuoo5qDjSYKO0y11FHfQ8RRBR5qljhIOOp4m6DjDUkdJBx3PEHS0stRRykHHswQdrS11lHbQ8RxBRxtLHWUcdDxP0HGmpY6yDjpeIOhoa6mjnIOOFwk6zrLUUd5Bx0sEHe0sdVRw0PEyQUd7Sx0VHXS8QtDRwVJHJQcdrxJ0dLTUUdlBx2sEHZ0sdVRx0PE6QcfZljp8Bx1vEHR0ttRR1UHHmwQd51jqONJBx1sEHV0sdVRz0PE2Qce5ljqOctDxDkFHV0sd1R10vEvQ0c1Sx9EOOt4j6OhuqaOGg473CTp6WOqo6aDjA4KOnpY6ajno+JCgo5eljmMcdHxE0NHbUkdtBx0fE3T0sdRxrIOOzQQdfS111HHQ8QlBRz9LHcc56NhC0NHfUkddBx2fEnQMsNRRz0HHVoKOgZY66jvo+IygY5CljuMddGwj6BhsqaOBg47PCTqGWOo4wUHHFwQdQy11NHTQ8SVBxzBLHSc66NhO0DHcUkcjBx1fEXSMsNRxkoOOrwk6zrPU0dhBxw6CjpGWOk520PENQccoSx1NHHR8S9Ax2lLHKQ46dhJ0jLHU0dRBx3cEHWMtdZzqoGMXQcc4Sx3NHHR8T9Ax3lJHcwcduwk6JljqaOGg4weCjomWOk5z0LGHoGOSpY6WDjp+JOiYbKnjdAcdPxF0nG+pI81Bx88EHVMsdZzhoGMvQcdUSx2tHHT8QtBxgaWO1g469hF0XGipo42Djl8JOi6y1HGmg479BB3TLHW0ddDxG0HHxZY6znLQ8TtBx3RLHe0cdPxB0HGJpY72DjoOEHTMsNTRwUHHnwQdl1rq6Oig4yBBx0xLHZ0cdKBgSW7rrOMySx1nO+iIEXTMstTR2UFHLoKOyy11nOOgI4Wg4wpLHV0cdKQSdFxpqeNcBx25CTpmW+ro6qAjD0HHVZY6ujnoyEvQMcdSR3cHHfkIOq621NHDQUd+go65ljp6OugoQNBxjaWOXg46ChJ0XGupo7eDjkIEHfMsdfRx0FGYoGO+pY6+DjqKEHQssNTRz0FHUYKOhZY6+jvoOIKgY5GljgEOOooRdFxnqWOgg47iBB2LLXUMctBRgqDjeksdgx10lCToWGKpY4iDjlIEHTdY6hjqoKM0QcdSSx3DHHSUIei40VLHcAcdZQk6llnqGOGgoxxBx02WOs5z0FGeoONmSx0jHXRUIOhYbqljlIOOigQdKyx1jHbQUYmgY6WljjEOOioTdNxiqWOsg44qBB2rLHWMc9DhE3TcaqljvIOOqgQdqy11THDQcSRBx22WOiY66KhG0LHGUsckBx1HEXTcbqljsoOO6gQday11nO+g42iCjjssdUxx0FGDoGOdpY6pDjpqEnTcaanjAgcdtQg61lvquNBBxzEEHXdZ6rjIQUdtgo4NljqmOeg4lqDjbksdFzvoqEPQcY+ljukOOo4j6LjXUsclDjrqEnTcZ6ljhoOOegQd91vquNRBR32Cjgcsdcx00HE8QceDljouc9DRgKDjIUsdsxx0nJDDOrCO+wlVk98e67hje1sdDS11/L2jZZ4TSXkakfKcRMrTmJTnZFKeJqQ8p5DyNCXlOZWUpxkpT3NSnhakPKeR8rQk5TmdlCeNlOcMUp5WpDytSXnakPKcScrTlpTnLFKedqQ87Ul5OpDydCTl6UTKczYpT2dSnnNIebqQ8pxLytOVlKcbKU93Up4epDw9SXl6kfL0JuXpQ8rTl5SnHylPf1KeAaQ8A0l5BpHyDCblGULKM5SUZxgpz3BSnhGkPOeR8owk5RlFyjOalGcMKc9YUp5xpDzjSXkmkPJMJOWZRMozmZTnfFKeKaQ8U0l5LiDluZCU5yJSnmmkPBeT8kwn5bmElGcGKc+lpDwzSXkuI+WZRcpzOSnPFaQ8V5LyzCbluYqUZw4pz9WkPHNJea4h5bmWlGceKc98Up4FpDwLSXkWkfJcR8qzmJTnelKeJaQ8N5DyLCXluZGUZxkpz02kPDeT8iwn5VlByrOSlOcWUp5VpDy3kvKsJuW5jZRnDSnP7aQ8a0l57iDlWUfKcycpz3pSnrtIeTaQ8txNynMPKc+9pDz3kfLcT8rzACnPg6Q8D5HyPEzKs5GU5xFSnkdJeR4j5dlEyvM4Kc8TpDxPkvI8RcrzNCnPM6Q8z5LyPEfK8zwpzwukPC+S8rxEyvMyKc8rpDyvkvK8RsrzOinPG6Q8b5LyvEXK8zYpzzukPO+S8rxHyvM+Kc8HpDwfkvJ8RMrzMSnPZlKeT0h5tpDyfErKs5WU5zNSnm2kPJ+T8nxByvMlKc92Up6vSHm+JuXZQcrzDSnPt6Q8O0l5viPl2UXK8z0pz25Snh9IefaQ8vxIyvMTKc/PpDx7SXl+IeXZR8rzKynPflKe30h5fifl+YOU5wApz5+kPAdJebwUTp4YKU8uUp4UUp5UUp7cpDx5SHnykvLkI+XJT8pTgJSnIClPIVKewqQ8RUh5ipLyHEHKU4yUpzgpTwlSnpKkPKVIeUqT8pQh5SlLylOOlKc8KU8FUp6KpDyVSHkqk/JUIeXxSXmqkvIcScpTjZTnKFKe6qQ8R5Py1CDlqUnKU4uU5xhSntqkPMeS8tQh5TmOlKcuKU89Up76pDzHk/I0IOU5gZSnISnPiaQ8jUh5TiLlaUzKczIpTxNSnlNIeZqS8pxKytOMlKc5KU8LUp7TSHlakvKcTsqTRspzBilPK1Ke1qQ8bUh5ziTlaUvKcxYpTztSnvakPB1IeTqS8nQi5TmblKczKc85pDxdSHnOJeXpSsrTjZSnOylPD1KenqQ8vUh5epPy9CHl6UvK04+Upz8pzwBSnoGkPINIeQaT8gwh5RlKyjOMlGc4Kc8IUp7zSHlGkvKMIuUZTcozhpRnLCnPOFKe8aQ8E0h5JpLyTCLlmUzKcz4pzxRSnqmkPBeQ8lxIynMRKc80Up6LSXmmk/JcQsozg5TnUlKemaQ8l5HyzCLluZyU5wpSnitJeWaT8lxFyjOHlOdqUp65pDzXkPJcS8ozj5RnPinPAlKehaQ8i0h5riPlWUzKcz0pzxJSnhtIeZaS8txIyrOMlOcmUp6bSXmWk/KsIOVZScpzCynPKlKeW0l5VpPy3EbKs8YxT65QnnqD2o/fVn9FrYc7pj04Y0a33jUb7Gg9dePY+S237V34g3n/KC/5Mt1uWSbbsqSZOK5q8tvXNdvWq2rPdi3pO7yDlGcdqa6kesmX6U5SmXJ7yZdpPalMebzky3QXqUx5veTLtIFUpnxe8mW6m1Sm/F7yZbqHVKYCXvJlupdUpoJe8mW6j1SmQl7yZbqfVKbCXvJleoBUpiJe8mV6kFSmol7yZXqIVKYjvOTL9DCpTMW85Mu0kVSm4l7yZXqEVKYSXvJlepRUppJe8mV6jFSmUl7yZdpEKlNpL/kyPU4qUxkv+TI9QSpTWS/5Mj1JKlM5L/kyPUUqU3kv+TI9TSpTBS/5Mj1DKlNFL/kyPUsqUyUv+TI9RypTZS/5Mj1PKlMVL/kyvUAqk+8lX6YXSWWq6iVfppdIZTrSS75ML5PKVM1LvkyvWJQpJb0sGEeCxxkmWplobaKNiTNNtDVxlol2Jtqb6GCio4lOJs420dnEOSa6mDjXRFcT3Ux0N9HDRE8TvUz0NtHHRF8T/Uz0NzHAxEATg0wMNjHExFATw0wMNzHCxHkmRpoYZWK0iTEmxpoYZ2K8iQkmJpqYZGKyifNNTDEx1cQFJi40cZGJaSYuNjHdxCUmZpi41MRME5eZmAUOJq4wcaWJ2SauMjHHxNUm5pq4xsS1JuaZmG9igYmFJhaZuM7EYhPXm1hi4gYTS03caGKZiZtM3GxiuYkVJlaauMXEKhO3mlht4jYTa0zcbmKtiTtMrDNxp4n1Ju4yscHE3SbuMXGviftM3G/iARMPmnjIxMMmNpp4xMSjJh4zscnE4yaeMPGkiadMPG3iGRPPmnjOxPMmXjDxoomXTLxs4hUTr5p4zcTrJt4w8aaJt0y8beIdE++aeM/E+yY+MPGhiY9MfGxis4lPTGwx8amJrSY+M7HNxOcmvjDxpYntJr4y8bWJHSa+MfGtiZ0mvjOxy8T3JnabwDGxx8SPJn4y8bOJvSZ+MbHPxK8m9pv4zcTvJv4wccDEnyYOmkCjbsxELhMpJlJN5DaRx0ReE/lM5DdRwERBE4VMFDZRxERRE0eYKGaiuIkSJkqaKGWitIkyJsqaKGeivIkKJiqaqGSisokqJnwTVU0caaKaiaNMVDdxtIkaJmqaqGXiGBO1TRxroo6J40zUNVHPRH0Tx5toYOIEEw1NnGiikYmTTDQ2cbKJJiZOMdHUxKkmmplobqKFidNMtDRxuok0E2eYaGWitYk2Js400dbEWSbamWhvooOJjiY6mTjbRGcT55joYuJcE11NdDPR3UQPEz1N9DLR20QfE31N9DPR38QAEwNNDDIx2MQQE0NNDDMx3MQIE+eZGGlilInRJsaYGGtinInxJiaYmGhikonJJs43McXEVBMXmLjQxEUmppm42MR0E5eYmGHiUhMzTVxmYpaJy01cYeJKE7NNXGVijomrTcw1cY2Ja03MMzHfxAITC00sMnGdicUmrjexxMQNJpaauNHEMhM3mbjZxHITK0ysNHGLiVUmbjWx2sRtJtaYuN3EWhN3mFhn4k4T603cZWKDibtN3GPiXhP3mbjfxAMmHjTxkImHTWw08YiJR008ZmKTicdNPGHiSRNPmXjaxDMmnjXxnInnTbxg4kUTL5l42cQrJl418ZqJ1028YeJNE2+ZeNvEOybeNfGeifdNfGDiQxMfmfjYxGYTn5jYYuJTE1tNfGZim4nPTXxh4ksT2018ZeJrEztMfGPiWxM7TXxnYpeJ703sNvGDiT0mfjTxk4mfTew18YuJfSZ+NbHfxG8mfjfxh4kDJv40cdAEfvRiJnKZSDGRaiK3iTwm8prIZyK/iQImCpooZKKwiSImipo4wkQxE8VNlDBR0kQpE6VNlDFR1kQ5E+VNVDBR0UQlE5VNVMFaBCaqmjjSRDUTR5mobuJoEzVM1DRRy8QxJmqbONZEHRPHmahrop6J+iaON9HAxAkmGpo40UQjEyeZaGziZBNNTJxioqmJU000M9HcRAsTp5loaeJ0E2kmzjDRykRrE21MnGmirYmzTLQz0d5EBxMdTXQycbaJzibOMdHFxLkmuproZqK7iR4meproZaK3iT4m+proZ6K/iQEmBpoYZGKwiSEmhpoYZmK4iREmzjMx0sQoE6NNjDEx1sQ4E+NNTDAx0cQkE5NNnG9iiompJi4wcaGJi0xMM3GxiekmLjExw8SlJmaauMzELBOXm7jCxJUmZpu4ysQcE1ebmGviGhPXmphnYr6JBSYWmlhk4joTi01cb2KJiRtMLDVxo4llJm4ycbOJ5SZWmFhp4hYTq0zcamK1idtMrDFxu4m1Ju4wsc7EnSbWm7jLxAYTd5u4x8S9Ju4zcb+JB0w8aOIhEw+b2GjiERNYmx7rxmNNd6y3jrXQsU451hDH+t5YexvrYmPNaqwnjbWesQ4z1kjG+sVYWxjr/mJNXqyXi7Vssc4s1oDF+qxYOxXrmmLNUawHirU6sY4m1rjE+pNYGxLrNmJNRax3iLUIsU4g1vDD+npY+w7r0mHNOKznhrXWsA4a1ijD+mFY2wvrbmFNLKxXhbWksM4T1mDC+khYuwjrCmHNH6zHg7VysI4N1pjB+i9YmwXrpmBNE6w3grVAcOGLNTSwvgXWnsC6EFizAespYK0DrEOANQLg3w9vffjew5MefvHwcofPOjzQ4U8O73D4esNzG37Y8KqGjzQ8nuG/DG9k+BbDUxh+v4e8eE3Awxb+svB+hS8rPFPhZwqvUfiAwqMT/pnwtoTvJDwh4dcIL0X4HMKDEP6A8O6Drx487+BHB684+LjBYw3+Z/Amg28YPL3gtwUvLPhUwUMK/k7wXoIvEjyL4CcErx/48MAjB/418JaB7ws8WeCXAi8T+IzAAwT+HPDOgK8FPCfgBwGvBvgowOMA/gPwBsC8fcypx3x3zEXHPHHM4cb8asx9xrxkzBnGfF7MtcU8WMxRxfxRzO3EvEvMicR8RcwlxDw/zMHD/DjMXcO8Msz5wnwszJXCPCbMMcL8H8zNwbwZzGnBfBPMBcE8DcyhwPwGzD3AvACM2cd9EMa6Yxw6xohj/DbGVmPcM8YkY7wwxvJinC3GwGJ8KsaOYlwnxlxiPCTGKmIcIcb4YfwdxsZh3BrGlGG8F8ZiYZwUxjBhfBHG/mBcDsbMYDwLxppgbAfGRWDMAsYToP8e/eXon0Z/MPpf0d+J/kX056H/DP1V6B9Cfwz6P9DfgPZ9tKej/RrtxWifRXso2h/R3of2NbRnof0I7TVoH0F7BO7/cb+N+1vcT+KQwb1h/JH+E3ro/hHjENDvj3529GujHxn9tugnRb8k+gHR74Z+LvQroR8H/Sbop0C/ANrh0e6Ndma066IdFe2WaCdEuxzawdDuhHaeeLtKVe+v+/Rq3l9jZqqbONpEDRM1TdQycYyJ2iaONVHHxHEm6pqoZ6K+ieNNNDBxgomGJk400cjESSYamzjZRBMTp5hoauJUE81MNDfRwsRpJlqaON37a6xM+NE68Pyc9L/zhj7/ys87874Z3O7cTN7bkf63Sp6098+u/czm4Hs4px967+oHcqV1zPdl8L3n09/rk2/5ptPeLrg++N6Lmbz3dibvvZPJex9m8t7Hmbz3SSbvbcnkvc8zee/LTN7bkcl732by3p5M3vsxk/f2ZfLe/kze+z2T9/7I5D38pmX0Xkom7+XN5L38mbx3RCbvFcvkvdKZvFc2k/fKZ/JehUze8zN578hM3js6k/dqZvJe2/T3Eh231XNnvF+NTN5rnv5eovPEaZm81y2T9/qmv/f9NQUu+3Tnx9cG3xuYyX4TMnnvkvT3Ljm6W+GTj214X/C9fvkzzjc8f8b7DSmYcb4Rmbz3cCbvPVcw43wpRTPe77aiGWvYUDTjz/yyWMafuSOT904snvF7LYtnnG9GqYz3O6p0xhrqlM74MweUzfgzh2Ty3v2ZvPdU2YzzHayQ8X63VMxYw7qKGX/mZ5Uz/swvM3mvfpXE76V/5YeuO/DoP2HC4PET+w4cM2ps/4nDB4wc3HfM+P4DzZ/Jg8dPGD5mdN/zx/cfO3bw+HTMh66X8Eg/rR+6tsLpw/eSesTyBfaz3/+S0/OFP9Bqf+/Q/jHPNf9f+uPXky7754kXJLB/sCzxz8W1acHA88Kh/I7lPz275S+eSZnj303LwPa+l9QjN66/ofOI9Beg/aj055MmDh85fOLUFoeqasu/a2qHQxX13L/qafgDY6H/t8zg9QKBcqcGtkmeyZTT45+ZEhcTeB58pIb+xrdJP/V5+QP543+TGTf98XN737//zONHFQvtj0f8u4HOEunPJwye2HfC4NGDBo/vO2TM+L4T+w+dEJHDOy2bh3daNqt3LF9gH4f9Ex7e4bLgUcj752EU3Cdv+vvx5//SoZ+Wk4d+osO3TPrzseOHT+4/cXDnwRM7H6p0Z4wZf46pcuGPj4WexxK8Hk+VzSM2TeWIjeMcao7Y/pMmDut7/vCJowdPmHAwfYf/+HBdlM3DdVFUDtczAvsne7jG9wnOjsDzowL74NEq8Hmx0HutE+SNv9cmg3LgcWbgvdTQe20D7+UOvXdW4L08offaBd7LG3qvffpfvBf/zuPvdQi8lz/0XsfAewVC73UKvFcw9N7ZgfcKBZ4j4leweKSkv1Y48FrwagTvHRHY36JudI7vX8xt/+aFAmX0QmWPvxc8fx0Rei934L14GfC9vBv753YLA9sVSX+eL5TPsuytssmuXfEE+Y8IlA2P4BVZLPnP/nv/0wOv+V5yj/i+aYHcFrpS4j9zWwPfQfD4jH9mPFfw+LTM1T7R719K6LXg5+f3snUujMVCnxfPF9YXP75wzMZ/B9Ov0FsNntjC/Ep1/etHKljI4AcHTzTB94OP8Dbh7cLbJzpBxzL4GxcWfi184nD84g5V+nBZU0PlzO39bznjefO45S2cbIWJf37+UFlcK0yeUL6wvjDXvG75CsVC+wfzBT8z+MMW/MEKsw3+YOXJ4LOCF5rB7U9J/1s0tB0e4Vv7fAnKG3wtzgfMGoXKHmTrWp+Lev+rPf795POyVQcKZfM7bRffP3wh6ie1++ELwPxu+WNxzsGLvvixCibBH4rgRUz8hiG8b5xjamj7TbHD+8Uv+oqEtklUd3Pq+w+fjwomyBNnG7wAs2Cbmuz5KP75+UNlcT0fFQrlC+sLXmjjvcIJylI09B4e4eO6cII8iS5EWZ9VyPtf/dmtM8HvvmAoT0bHTK/A68H9Eh0zeMSPsdTQ9rcFjpm+6a8V8f63joRvEBKxDG6fP/RZwf3DbS3BumFRF3PFy1I0i7IUDpWlSOC94MUz4ohMPguPtNBnJbr49rz//U7C5YzXp1wJPieYL9F3kcexzPHt4zc6ebzEvOKflxraPt7+i9+h7en1JtF5L3iTldV5z/HmJ+nzXvzz/63zXlasw+e9YgnKUjT0Hh7hc1WxBHmKJcjD+qxCXuI6nuhvPE/4tXCe4Hef7HlveuD17Jz3rg2c9y5Nfy3RsXZEKF8ilpmd94L7Fwt9VvEsPit83gruXzz0WSUy+Sw8wuet4P7BfROdt4LlDJ+3iifYL5gns/NWsmWOb18y/f8Znbfin5ca2n5e+t+szlvx/ZM5b5UIvJ4T56345/9b562sWIfPWyUTlKVo6D08wueakgnylEyQh/VZhbzEdTzR33ie8GvhPMHvPtnz1srA69k5b00JnLduTX8t0bFWIpQvEcvMzlvB/UuGPqtUFp8VPm8F9y8V+qzSmXwWHuHzVnD/4L6JzlvBcobPW6US7BfMk9l5K9kyx7eP99FldN6Kf15qaPt70/9mdd6K75/Meat04PWcOG/FP//fOm9lxTp83iqToCxFQ+/hET7XlEmQp0yCPKzPKuQlruOJ/sbzhF8L5wl+98met54JvJ6d81b/wHnr+fTXErXNlA7lS/T9B7cPn7cKZvJZZbL4rPB5K7h/GYvPwiN83iqc4LO80H65Q9viET5vFU6wXzBPonYu2zLHt08fhfeP81aBBDpSQ9u/m/43q/NWmVDZw+UNPi+QoOyJ2lozO+cGty8QKnt8+48zKXsswf452NfQItlz7n/d11DALV/zzL7bzNpryyR4L7t1dkf633/z/A5mX4TKHvG+huZZ/R58H3g9fO6yaas/M/B7sCf9tf+yrT58PBf4F/ME9YT7BMokyBP/DssGXs+J80b88/N7/3tcuZw3yobyZXRcxPWVc8vXPBbaP5gv+Jnx8sRZl0/wXvyz0keV/+O8Efys+L6poe1zh34jygfK1DKUo3yC8gZfC5434l9UIe9/2Wa3Pga1x7+frI77ArF/agm+l8xxH9++TuC4j3emF0mwf7yMRUL7x/MHnyf6vUpNUJbwOStPBtvnCZU9vn2J9MTBa4PMeATPL3kz4FE68Jk7Qp+ZO4GulMBruUK6EvXZ506gKxHTvKHPSknwWUE9+b3EZc3oeislpD++faUETBNdb2U0SDDmHe5bCvfN4Xnh0HvB6+fwvWOQZ5HQe8E+o/A5PKMBZsFyx7x/DkwLfzfFQu8F2RUPvRf8rsJtlsE+/pKh94LfWanQe8HfqPC9YaJ7qgJe4noUrmPB35RgjuD5NXjMBLcPn0Pi2x+fyTGT6BwbHGwVPmYqJNg++DsRvkcJ/iZU8LLOHdSTP4PceTLYPqPfnMaZHDOJxh8kug4pn0k5y4XKmegcWSYLreHzdaK6Evx9jn9OeP/sDUL3WoDRztjhPEF9eIR/GxJ9h8HtbetP+Lc3WGfKhN4L/i6Hv4NEAwaDZQkOCg6/l+h3PNG1diz0vEwWOcP7Jrr3ypVAb/jeq0OC+hwL5cjoHBH+XY1vf3Ym54hE16mZ/a4mus5MdA2ViGm50HuJ7l0T1f/4djlR/4P6w/U/M614hNlkdrwkqv/BY6NA6L3guSt8fZ6ojSDZ+h+sQ/H712Ta+bOq/wVD27vW/yGZ1P9E7a2Z/UbGtx9uWf+DfLNb/4NcMqv/wX6L+GeHPzOb9T81yvW/YOi9YHtzuP4XTJAn2fofrEPPpD9Ppv6XzCJnuP7Hrykzqv/xz0sNbT/Nsv4H+xMzqv+XZFL/E/VfZlb/E/VBlEqgK7M+iER9ocFr9/hnhz8zJ+p/UH+4/memFY8wm0TnyGA9zqivK1H9D/Y5h/uJ/636vzL9eTL1v1gWOcP1P36fllH9j39eamj7RZb1PzgOKKP6f30m9T/RuKPM6n+isSPFE+jKbBxCojFM4clYKQk+Myfqf1B/uP5nphWPMJtE58hgPc5ojEqi+h8cKxYe3/Vv1f/4+Llk6n/hLHKG63+8jSSj+h//vNTQ9uss63+wDSej+n9XJvU/njeoK7P6n2h8cZEEuhIxLRp6L9E4+ET1PzhGOq4v/l52639Qf7j+Z6YVjzCbRONhg2OZkxnzmWgcfJFQnn+r/sfHzSdz/5tVzvC+8fJnVP/jn5ca2v7pTOp/ovvfYP3K6P73uUzqf6K5G5nd/yY6DySas5CIaWbHRmb3v/Htsln/Cyeq/0H94fqfmVY8wmwSnUsStTEX9f63Xmd2/xueb/Fv3f+mBV7HI9xnEPwb3yf+uXjkS7B9cG5R/BH8vjzvn+MtUhJ8Vt7QfvHtP03/gOBvixfav2iC/EGWXgblTjQ/MJbgs1ISvBbsq/sgdrjM2TTNiF8K/p0zt/fP78MLfX7YNOPL2D/LGjyn/ZumGa6f/2benT+/8vzQeTn1+V/m65iW64Grq2T1+YnqU0pon2CdTEmwfa7A+8Htd6d/wKGxDYFzT/y1cD689mcm28Uy+JuozMHyZFaXUxJsH89dIMH28feCv4nBc2dwmyCv4GflD7wf3P5A6BgPHpfBc2Q4f3g+a6JyZ3RdF/6slASvBY/xX0LHlesYq2Dd69sXljPjJo2ZOHzw6Imd01/9j+1m2mTTbqZNNu1icmXXGSCR3UyinqVEbgZnhN4Ljmxtlf4XR3mRwPNg7yweQbuZ4K9P+FfZQlPrbDKNFc8gf7xseLQM7OBn8EHXzxgxf9i4l+ee4l9d+sOLDrSysQkJL2gUtgnJZN9Y+IW4RciZ6f8P98QHd0r2rBkeneR4hP99NZdoBEpmo0Vty1k0QTljoTyxfzFPcL8wq+ycq8JXvhb75wk7I3gWuRON0Aie8Y8MvI7IF3gvJcG+4VFD8e2rB/YLjwrPF8rhBf4fdM0IbotHy1Cu+La1ArnqZvB5XoLPi5cr0XedP5My584gRyzBtnlDOXIn2C9Ybpt8iRjFz0lhRq0CuRp4yZU/+HmZlT+Z77VAJjlahnLEEuznhfaL17u0TLYtkMm2Yc3x/+dLkCv4WWGucT7g0jT9eSIeqRnkwyMlwfbhO+5Eo/fyJdATbhE5Lf0v6mHcMi3RuTpYF4N1JXzsxhJoKuAl/l4TnS/Co8+C7wXPNfHzUDbvLNvEAmWJf7bNnWWH9L/qd5ZxXebqe2K8p/Y/vuZulc1r7lZRueY+PbS/F/rczBxZE11zx4+58DV3cCQlHsFr/fhnZ/Pa5IycvOaOX7+GZyUHWxkSnfvwSDQCNvi52TxPtMrueSI4qyCeP/733zxPxOvDoMHwVR8zYXDfYcNHT0x3a///zRGd3Strx9r7r3ksZ3bUBq9CYqH3EpnFZlNTWjbPcrmKexmf2eJHdLz2J/rFD9aljOZNhI+0RJ8R/Jwwm+D34Kf/LVHf+6DK1oZTa5c+cUyHyZdtPWf9xSVX1fq6aNnvJ50yef8nY8JacmVS9kKZlCGzsadRODNVSv+b02emuM6RE/86J1VN////XWVk6/j7v6uM/30kdZURHKMe5BSfb57oWP6feUqBfUpk8Hl5vKzPDSkZlCN4JR7+DDx8L6lHwladWII8Ub+K8tP/5vS5Kn69NGjwgElD+44cM7Rv//Hj+0+NL1CTvjBNl/St/uMzWJ9snsH6ZPMMVD67bcOJzmCJ2olTQtuF9wnW1mD7eVoG2wQXajwjg21aBbZplcE2rQPbtM5gmzaBbdpksM2ZgW3OzGCbtoFt2mawzVmBbc7KYJt2gW3aZbBN+8A27TPYpkNgmw4ZbNMxsE3HDLbpFNimUwbbnB3Y5uwMtukc2KZzBtucE9jmnAy26RLYpksG25wb2ObcDLbpGtimawbbdAts0y2DbboHtumewTY9Atv0yGCbnoFtemawTa/ANmFH1cyuIrL5q5+WzfNI2cz6u7LZp1Iu/Mvref/8NfVCn5/fy9Y5NVPXkUQzNxONFgu/l2hGanhkRZA/rpKaBrYLf7fB2YjhqwsLrb2z+b3HcvB7z6X4vaeE3vs3vvdEV6jYrnXgefx3LdHVqsv1iON5JNPVomKB8sYfKaG/ePzXI/zi1xpRHuHX3Dtc5vhdVYdAjn/jOEjk9pArg/JndNykJNgeI5ri/NKXEDkdF/tnjRnqhR7h00os9DxexLAZSWoGRYtl8rnBzw++Hv7slATbBj/7X7hZ6xP/LNebtfilVU7frMUXxBg9ZuLwIVP7YonBUcNH9x0/ePLg8X+tKzph+KDBfQcPGTJ4IJYbnTR64uDxoVu58MTK/+hW7v+ZRQizupXD+1k1ohcOPA+vPuXGn7NQYbw+4xR0XPrz9IUK2x+qwp0HT2w3fPTZf9ffzqb6ph2qvS3/qrzhrInOGIleT/GisYZh0A41nj/+9988Mxyb/jz9zDB49LhJgycNHtR37KQBI4cP7Dtk0uiBE7HQ8MD+I0fGzwTxZsH/+EzQOptngtbZvKhOzeaFc8IzQSLbpawaY1K8rBtj8HBt3g5f4AbzJ7qxCA54Da6NFx/wms0zUGvGGSg+jRhnoBrpz/9xBkpLP1I6HjpQzkg/TlqawyScLqOLo3DqoJTg/1MTfE74Ef5BikvJ5mmsdXZPY3HXAlZr9KHTVPr3dPjkNRy/CKP7j4yPEPyPT1xts3niapvNE0/u8OjXf+PElcizLquW5mROXMFtMmpFxoN9cks0Ijt4p18q8DzsVxJu3Q6+F2zV/pfGL7RhjF+oFdARrA/x7T0v22sMpgSPt79fDL0W/Pz8XraOk7/vsMMtIWF9wTvm+Bkv/SSEH4SOfz2N/0YESxr89FwJlMT+WaJ/tC14GWxn85sS/3/uBJ+b0f7h18LfrttZ8TDtYK4w7eDnJ3L/TAntl6itN3hWSVTecO5EY+ni22ZT898rkaUmyJuZ5kRHou0Im/hn/AvXCW2ze50Qv8nL6euE+KVc+u3OwPGDzYE5qO/oSSNHDh8y/H/aPOIn7v9r88jWD9C/NiiwUOB5eDFAx0OQ0p4RN6/AD0R8MNk/7iZa/lUR28frYThJ+PweS/B6POF/3XQRv/LJ6WM5fjs5aPh40+4zfPLgvhPH9B3ff9DwKWEPINdRF+GZMq6Hvev1Tp4ELwavRcKjPsK1JJgzXhbHtXjj9p8Je4XCM8S8BNskunvNFfp/auj1lCS2DecLvpeo9ye8X1a9OeHeQC/B9sErIDxyZ/BZ4Z6scP3I7ndUPEHOeNnip6DDR8vw0Wg9Dc/aKuWW+++6XtJtfy9RXQ/6x4V97YL1wffsHsEzW/gR9mYI9wiGf8ot8scyKkeiOhz/LoM+YXEe8XuM4Hc5cfBQc/kS9wQIl9ZxpZVc8f0dV+NK+K0G5xgWDCdM/5vobBHL4P+5Qn8z2zaWyecmOsLjnxn/NoLljev4/wBpzMvtioUeAA==",
|
|
1909
|
-
"debug_symbols": "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5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXoXkVUheheRVSF6F5FVIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdcIxrINdKSXCMtyTXSklwjLck10pJcIy3JNdKSXCMtyTXSklxJWpKWpCVpRVqRVqQVaUVakVakFWlFWpHWpDVpTVqT1qQ1aU1ak9akjbQk90hLco+0JPdIS3KPtCT3SEtyj7Qk90hLco+0JPdIS3LfSFukLdIWaYu0RdoibZG2SFukLdI2aZu0TdombZO2SdukbdI2aZs0I81IM9KMNCPNSDPSjDQjzUhz0pw0J81Jc9KcNCfNSXPSnLQgLUgL0oK0IC1IC9KCtCAtSBNpIk2kiTSRJtJgyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlBksMlhgsMVhisMRgicESgyUGSwyWGCwxWGKwxGCJwRKDJQZLDJYYLDFYYrDEYInBEoMlBksMlhgsMVhisOQ57HqWj2HXR3mmrbPclOfg/O0snTIoRZmURdlTzkU4aXMRTtpchJM2F+GkzUU4aXMRTtpchJM2F+GkzUU4aXMRTlqQFqQFaUFakBakBWlBWpAWpIk0kSbSRJpIE2kiTaSJNJGWpCVpSVqSlqQlaUlakpakJWlFWpFWpBVpRVqRVqQVaUVakdakNWlNWpPWpDVpTVqT1qTNRTjpcxFO+lyEkz4X4aTPRTjpcxFO+lyEkz4X4aTPRTjpcxFO+o20RdoibZG2SFukLdIWaYu0RdoibZO2SdukbdI2aZu0TdombZO2STPSjDQjzUgz0ow0I81IM9KMNFjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJw5KAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLEHymkheE8lrInlNJK+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+J5DWRvCaS13zOvdpZGqVTBqUoz3MdfpZF2VM+zuPEWS7+dlMapVMGpShJW6Qt0h7ncR4laZu0TdombZO2SdukbdI2aUaakWakGWlGmpFmpBlpRpqR5qQ5aU6ak+akOWlOmpPmpDlpQVqQFqQFaUFakBakBWlBWpAm0kSaSBNpIk2kiTSRJtJEWpKWpCVpSVqSlnRA0gFJ2skSv51lT3myxM9/cLLEdZab0iidMihFmZRnWp5lT3my5Fmeafm3n3/6f3/465/+8K9//uN//vRP/3P/4//577/823/96d//8vzjf/1//3H9n3/965/+/Oc//d9/+Y+//vu//fF///df//gvf/73fzv+30+34z9HM/+vpZ/3+uf7P16//qv9/Kf/6/7F78/370r/+eef7PiT6uf7N9P3P53//P7N9M/3r5mPP67jjxX3P+bx8zZLpv+cff2Luv1c+/j/TmT/vP34q5i/uj8Iu4+/En+VP9v5g3n81XFXtH7Odd2R+/2oc5Fi3fx5nz/RLLJ+3joPmE3w9bM//u5Xu/C3v/3z3/5/",
|
|
1909
|
+
"debug_symbols": "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klcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5FZJXIXkVklcheRWSVyF5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXhPJayJ5TSSvieQ1kbwmktdE8ppIXnONaCDXSEtyjbQk10hLco20JNdIS3KNtCTXSEtyjbQk10hLciVpSVqSlqQVaUVakVakFWlFWpFWpBVpRVqT1qQ1aU1ak9akNWlNWpM20pLcIy3JPdKS3CMtyT3SktwjLck90pLcIy3JPdKS3CMtyX0jbZG2SFukLdIWaYu0RdoibZG2SNukbdI2aZu0TdombZO2SdukbdKMNCPNSDPSjDQjzUgz0ow0I81Jc9KcNCfNSXPSnDQnzUlz0oK0IC1IC9KCtCAtSAvSgrQgTaSJNJEm0kSaSIMlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5ZsWLJhyYYlG5YYLDFYYrDEYInBEoMlBksMlhgsMVhisMRgicESgyUGSwyWGCwxWGKwxGCJwRKDJQZLDJYYLDFYYrDEYInBkuew61k+hl0f5Zm2znJTnoPzt7N0yqAUZVIWZU85F+GkzUU4aXMRTtpchJM2F+GkzUU4aXMRTtpchJM2F+GkzUU4aUFakBakBWlBWpAWpAVpQVqQJtJEmkgTaSJNpIk0kSbSRFqSlqQlaUlakpakJWlJWpKWpBVpRVqRVqQVaUVakVakFWlFWpPWpDVpTVqT1qQ1aU1akzYX4aTPRTjpcxFO+lyEkz4X4aTPRTjpcxFO+lyEkz4X4aTPRTjpN9IWaYu0RdoibZG2SFukLdIWaYu0TdombZO2SdukbdI2aZu0TdomzUgz0ow0I81IM9KMNCPNSDPSYInDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSxyWOCxxWOKwxGGJwxKHJQ5LHJY4LHFY4rDEYYnDEoclDkscljgscVjisMRhicMShyUOSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwJGBJwJKAJQFLApYELAlYErAkYEnAkoAlAUsClgQsCVgSsCRgScCSgCUBSwKWBCwJWBKwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwRLBEsESwBMlrInlNJK+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+J5DWRvCaS10Tymkhe8zn3amdplE4ZlKI8z3X4WRZlT/k4jxNnufjbTWmUThmUoiRtkbZIe5zHeZSkbdI2aZu0TdombZO2SdukGWlGmpFmpBlpRpqRZqQZaUaak+akOWlOmpPmpDlpTpqT5qQFaUFakBakBWlBWpAWpAVpQZpIE2kiTaSJNJEm0kSaSBNpSVqSlqQlaUla0gFJByRpJ0v8dpY95ckSP//ByRLXWW5Ko3TKoBRlUp5peZY95cmSZ3mm5d9+/un//eGvf/rDv/75j//50z/9z/2P/+e///Jv//Wnf//L84//9f/9x/V//vWvf/rzn//0f//lP/767//2x//933/947/8+d//7fh/P92O/xzN/L+Wft7rn+//eP36r/bzn/6v+xe/P9+/K/3nn3+y40+qn+/fTN//dP7z+zfTP9+/Zj7+uI4/Vtz/mMfP2yyZ/nP29S/q9nPt4/87kf3z9uOvYv7q/iDsPv5K/FX+bOcP5vFXx13R+jnXdUfu96PORYp18+d9/kSzyPp56zxgNsHXz/74u1/twt/+9s9/+/8B",
|
|
1910
1910
|
"verification_key": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuqAAAAAAAAAAAAAAAAAAAAUgKOPx3P9g8K7LEI31SLOawAAAAAAAAAAAAAAAAAAAAAABeYOqjvUYh/b1sU8ezgDwAAAAAAAAAAAAAAAAAAACw0ENi18/qA6OuiTKpfeIyAAAAAAAAAAAAAAAAAAAAAAAAThai8+aUe5skrHup9GxwAAAAAAAAAAAAAAAAAAACoOTBk0ceUsiGdasxhLOVc+wAAAAAAAAAAAAAAAAAAAAAAAs/xebxJwVP4dcxWMsYsAAAAAAAAAAAAAAAAAAAAG5uNZjoGSs1WszkfW8xfNVgAAAAAAAAAAAAAAAAAAAAAABPeEksvCoramvliZy3fZgAAAAAAAAAAAAAAAAAAANyxAcjuCCf5N/b2SdXHkDf8AAAAAAAAAAAAAAAAAAAAAAAm2Jys01XYjdVgdUyKRPIAAAAAAAAAAAAAAAAAAABAzpcS6FRUdFJZ+T7d8HIL2gAAAAAAAAAAAAAAAAAAAAAACzZJTcyXVS8zdIxVI8O8AAAAAAAAAAAAAAAAAAAAzvR60snBepmE9nI3IOXiHj0AAAAAAAAAAAAAAAAAAAAAAAXUhh7Dmm/3ajGNDfloHQAAAAAAAAAAAAAAAAAAAAIBvFLxhGihbnU68MkeL0o2AAAAAAAAAAAAAAAAAAAAAAAdAMD1HMQB3m1nAOGUTlMAAAAAAAAAAAAAAAAAAADYyM6ezJe6/54wyZCh/2mzrQAAAAAAAAAAAAAAAAAAAAAAEvEuLfWhvR+jLNq5xqWKAAAAAAAAAAAAAAAAAAAAD0AP3zfg6ItPNClD2QCWWfkAAAAAAAAAAAAAAAAAAAAAABSCoN7CUodqZnhi0ZV4OQAAAAAAAAAAAAAAAAAAAGi8WsebnnHIRygfEVmAGv+/AAAAAAAAAAAAAAAAAAAAAAArEelJ8vB3LTgLqR5dCBQAAAAAAAAAAAAAAAAAAADIwTHfHx0asecB32py1ow2tAAAAAAAAAAAAAAAAAAAAAAAFk8LB+iMfKmKDs0r9UvTAAAAAAAAAAAAAAAAAAAAJzF9LwqADNbKcfUoT8KtTa8AAAAAAAAAAAAAAAAAAAAAAA518y3hD5iLVkztpJIXywAAAAAAAAAAAAAAAAAAAB5J8PjTkTM7ZuCKjl4o1N0dAAAAAAAAAAAAAAAAAAAAAAAGAYYZQRXqMgE23QeNvXEAAAAAAAAAAAAAAAAAAAAzpcVM8SnGYpeM2ojUpKIsMgAAAAAAAAAAAAAAAAAAAAAAJZIxBoI9tXMYA4VtZhUfAAAAAAAAAAAAAAAAAAAAbjlCWKFs7BJFf3D9DZXyj+MAAAAAAAAAAAAAAAAAAAAAAALih/kciGzAHY5nYkJ5sQAAAAAAAAAAAAAAAAAAAGIRGVBib356uO/yHDjpNRlPAAAAAAAAAAAAAAAAAAAAAAASol3BTx0DjE3ye3LtvNIAAAAAAAAAAAAAAAAAAABy3hePzUDhAPgtnuQd/iXPVgAAAAAAAAAAAAAAAAAAAAAAA320elPtJuuKLDSHFOPhAAAAAAAAAAAAAAAAAAAAZ/wYkodBMt5dBdZH1hXPzYEAAAAAAAAAAAAAAAAAAAAAABUywthTsf8x8SJIRAPc3QAAAAAAAAAAAAAAAAAAAE4AZdRw8m3VQwwGz3obihrPAAAAAAAAAAAAAAAAAAAAAAAiYVsRMqjMaKZ5dIDOm8oAAAAAAAAAAAAAAAAAAAAtj0wyksqP2/lfLXo/dYnW3QAAAAAAAAAAAAAAAAAAAAAAL57QqvFLsZ+DoosEyIqvAAAAAAAAAAAAAAAAAAAA9Q/YGA7Zu5UvYkNPQFnA+isAAAAAAAAAAAAAAAAAAAAAABRzi+jB2vPphOEyd0uS9gAAAAAAAAAAAAAAAAAAAIuA7MTCvEbC/8hbvDFY+MEKAAAAAAAAAAAAAAAAAAAAAAAYIfioWvt9Od1dxYBLcSAAAAAAAAAAAAAAAAAAAAA/ULJ7KzXp4ajwigtO83cIwQAAAAAAAAAAAAAAAAAAAAAAL8NDXwXGxiqW0ifl9iVqAAAAAAAAAAAAAAAAAAAAJNcTRN4Zh4moRUH7EG+7jsgAAAAAAAAAAAAAAAAAAAAAABgWO2GDJ+IpVBROShGTIAAAAAAAAAAAAAAAAAAAAGDkKwKAGBQIfLqKX9kKIEb0AAAAAAAAAAAAAAAAAAAAAAAtLf5MsJS7owcXeVhbZ+wAAAAAAAAAAAAAAAAAAADwXpgfb0qJFaHCT4MNQAvIugAAAAAAAAAAAAAAAAAAAAAALEFKLA+IXcRTU93ZYt+bAAAAAAAAAAAAAAAAAAAAxUKA+G4SMg48a0ev0t+NKeMAAAAAAAAAAAAAAAAAAAAAAAbnvGB3em8Uh4KrcmOp+gAAAAAAAAAAAAAAAAAAAL3OHDqhjZ68rZE4mJ1zD/JUAAAAAAAAAAAAAAAAAAAAAAAj36ToshUT0kpCp7B5bmkAAAAAAAAAAAAAAAAAAAB4sEZP+wMBXe8VwZ36X+6FbwAAAAAAAAAAAAAAAAAAAAAAKcBoQbT/c4iDpb7r1FckAAAAAAAAAAAAAAAAAAAAtDqezemhg7Oi+34xDg230sEAAAAAAAAAAAAAAAAAAAAAABO4sn52oV3opfWu/DKRuwAAAAAAAAAAAAAAAAAAACtd2AbRZeI5OsELP8u5zjxkAAAAAAAAAAAAAAAAAAAAAAAY3rbx46FOreB9rNn8u/cAAAAAAAAAAAAAAAAAAADAKNiiWmkj7o7LYJJ9I7ZoNQAAAAAAAAAAAAAAAAAAAAAAGzVehumOF1LVn9ASjCjaAAAAAAAAAAAAAAAAAAAA6EVWoydAAB3v2e9BcP5E2l4AAAAAAAAAAAAAAAAAAAAAAB/T9HtEvTTZu5GqbBSibQAAAAAAAAAAAAAAAAAAAFyhtobp1jhy0edgw8QYKsKaAAAAAAAAAAAAAAAAAAAAAAAfNk+RBYlyX7LEE4s96QYAAAAAAAAAAAAAAAAAAAAv5DUHenCWw5IejOyV11iE/AAAAAAAAAAAAAAAAAAAAAAAIZ6jv7o2ccY+6JXil+1TAAAAAAAAAAAAAAAAAAAAWnkS2fGi2qgbPZLoywi7NI0AAAAAAAAAAAAAAAAAAAAAAAjbxHMmD9BZVicddnqt0AAAAAAAAAAAAAAAAAAAALpG2oUw2UhyF5Z8ispFCbT9AAAAAAAAAAAAAAAAAAAAAAAblYBWs1LAl1kjUKB8kUAAAAAAAAAAAAAAAAAAAAD8jLe3il8s3zupSK1xWFlcCQAAAAAAAAAAAAAAAAAAAAAABI9PzjT+AWXaFG7a1Rl1AAAAAAAAAAAAAAAAAAAAJ03PvcdzILc/c/CRcfg4naUAAAAAAAAAAAAAAAAAAAAAAA+fN5NIaU/9Usgtr9FI3gAAAAAAAAAAAAAAAAAAAGE35mSoHCwQ1qLpwuEgAZ+7AAAAAAAAAAAAAAAAAAAAAAADFE2vj40KwyGBwTbD7G0AAAAAAAAAAAAAAAAAAADi99et4hL18wTPWrcGHrSxMAAAAAAAAAAAAAAAAAAAAAAAJHl3XF4p1tyaUbjmsWfbAAAAAAAAAAAAAAAAAAAAg8WDxPbgBSpu+udttSKtTZIAAAAAAAAAAAAAAAAAAAAAACTt4hNxFx+FUlL7wEXbNgAAAAAAAAAAAAAAAAAAAN8Ou7CoVVKrtjyo775VPenbAAAAAAAAAAAAAAAAAAAAAAAqzrJsEiNxIJ/F3FBDoRkAAAAAAAAAAAAAAAAAAABKb2cIXvKELGzXdLsak7JGEQAAAAAAAAAAAAAAAAAAAAAAEWpfMXvJ0SkmI1IdgoAUAAAAAAAAAAAAAAAAAAAA1C8O/XC59sNJ/fxewa/3XKgAAAAAAAAAAAAAAAAAAAAAABZT/LXKKxt7fPSZ0cYS6AAAAAAAAAAAAAAAAAAAAOwOwVZK5Ys5wO3Shn8hX+XaAAAAAAAAAAAAAAAAAAAAAAAUd8mKwF7lV45Sl/SZiYkAAAAAAAAAAAAAAAAAAADRm7356gtlZbPuda3U/vDBgAAAAAAAAAAAAAAAAAAAAAAAIna5XPqaJCJZ9WNKv6HJAAAAAAAAAAAAAAAAAAAAD2c7beACg9vkK95AWHKnSnQAAAAAAAAAAAAAAAAAAAAAAA/FsR+JqaUgJy/b1ewsRQAAAAAAAAAAAAAAAAAAAEKF/X3nDkSYscibqResWKzyAAAAAAAAAAAAAAAAAAAAAAAia16VsAtzFWE9b9eCVR4AAAAAAAAAAAAAAAAAAACfr8PQSX4ivwm3fN2kY2Z/CgAAAAAAAAAAAAAAAAAAAAAAEWpT7nl6PedV2vtrbYaOAAAAAAAAAAAAAAAAAAAAhUuF9c3cB2w9T+DJgfmIrLsAAAAAAAAAAAAAAAAAAAAAAClbjLiEl3aDmC2mrjZl8wAAAAAAAAAAAAAAAAAAACqsbCcAtn2MArxTHstyVRmlAAAAAAAAAAAAAAAAAAAAAAASOZAncT+gKXzeXOzkWpUAAAAAAAAAAAAAAAAAAAAaUVWcnuDlzcZyaP8QdxLcwQAAAAAAAAAAAAAAAAAAAAAAHkHX3dqx8KmIe+9yRs7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBbNBMOStzJTRZ4CmNxg3AWgAAAAAAAAAAAAAAAAAAAAAAGWiFtHxgbsmtjIK9HqcRAAAAAAAAAAAAAAAAAAAAwhVn7f8hl+RcEovbryZtEZkAAAAAAAAAAAAAAAAAAAAAAAmzSrH+bJFvTzkZKJ/+JgAAAAAAAAAAAAAAAAAAAGvMegX/lalrKJQkxfczZw2WAAAAAAAAAAAAAAAAAAAAAAAAxDcm91tv2g3iLODg36sAAAAAAAAAAAAAAAAAAAAdCgnXF47JO614WPluZPC0jQAAAAAAAAAAAAAAAAAAAAAAL5tuC04sAZaN5cMkgqp9AAAAAAAAAAAAAAAAAAAAFLmaKhz1vbFNGPy31tW7G0MAAAAAAAAAAAAAAAAAAAAAABibwBFKqYLGRXSxHbsAPgAAAAAAAAAAAAAAAAAAAIFYESpGMQpiuEn23VYsLIaUAAAAAAAAAAAAAAAAAAAAAAASkF6WwsjbCGXWk491oyQ="
|
|
1911
1911
|
},
|
|
1912
1912
|
{
|
|
@@ -3724,7 +3724,7 @@
|
|
|
3724
3724
|
}
|
|
3725
3725
|
},
|
|
3726
3726
|
"bytecode": "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",
|
|
3727
|
-
"debug_symbols": "
|
|
3727
|
+
"debug_symbols": "tV3bjhw3svwXPeuh8saLf2WxMGSvdiFAsA2tvcCB4X8/vGVkeYSmaqpHL2LMaDqCTDKSVSSr6893//r40x//+fHTL//+9b/vfvjHn+9++vLp8+dP//nx868/f/j906+/tN/++e7o/5C++6HQX+/f0fgptZ+O9hP3n6T9JO/fSZ5FmUUdhR6zoFm0v7dWyCx0FjaLxpJakWdRZlFHYccsaBY8C5mFzsJmMVlssthkscmSJkuaLKn9X37/LrefSisaJx2tlFXqKhstUSvTKvMqyyrrLMuxSlolr1JWqatcfGXxlcVXFl/tn+dW9r9vEav971tta1pl//tW7VpWWWdJR69A6YAc9CrUDsRBJ9UOGisfHSQH2UFxUBeg1TQicsAOxIE6MAfJQXZQHKyYETszOzM7MzszpxkQ4jojQnLMUJCQA15BEHGgKwhiDtIKQh+mE5QVDfGW9sE6ATlgB+LAW6reUvWWqrdUvaXqLTVvqXlLzVtq3lJzZnNmc2Zz5j6ERzSSrGgkXUFI5iCtIKTsoKwgpLpAPlYQ+vCfgFc0sre0W2ACHy3ZR0v20eI2IPcBuRHInUBuBXIvkJuB3A3kdiD3A7khqDhzdebqzMMkPRrDFT0awxY9CMMXDfDwRe6AHPAMAg9fDKAzCNx9MUGa0WD3Bbsv2H3BdDggB425f7rbgqkDdWAOkoPsYOYoppmkmI9V0ip5lbJKXaWtMq0yr3Lx8eKTxSeLTxafLL7uhx6WPvh7MMbY5w7YgThQB+YgOejNkQ6Kg7pAH/sTkAN2IA7UgTlIDpzZnNmcOTlzT+lsHbADcdB5ejv72Ofe0D72ey/1oT96oA/9CbzfsvfbGPo9KmPoD5Ad9OoMnrpAH/oTOHNx5uLMxZnLGhHSx6VwB+yg/bH0KbSPywnMQZ9qtYPsoDjoE25rsfRxOQE5YAfiQB105txBcpAddOajgxU56UNzAnLADsSBOjAHyUFeoA/JUdKMpfQxOYE4UAfmIDnIDlYPiKweED0ckAMeo1r6GB6lrtJWmVaZV1lWWWdpxyplphrpI1XGb8xBcpAdFAd1gT5SJ+h90ivWR+oE4kAd2MxmMjL5ANlBcbBmQxmZfABywA7EwZpDJXsNs9cwew2L17AP3gnYgTjwGvbBO0FykB14DYvXsHoNq9eweg2r19Avd6R626u3fWRy7leSq4Z6kAN2IA7UgTlIDlYNdThmgLrAcMwAq4ZK7EAcqANzkBxkB8XBaruO65leefYasteQvYbsNeTsoDhYvaPiNRRywA7EgddQvIbiNRSvoXgNxWuohwNvu3rbu0dyL5fzVLOD4qAuMJL8AOSAHcj0oo4kP4A5SA6m/dTKKqf9NB2rpFXyKmWVuspu53Y/IuPupH1Yx+S9Slolr1JWqau0VaZV5lWWWfbAqs0bnFG239sxb2qM1l0NrdsaWvc1vG5seN7SjLJ/Ls/bGCvzPmaUssr+uTpvZUbZZ3ZdNzN13s3kY97AjLJ9Pje9HoxR6iptlWmVdZY9Q+R+D6d+D5dT+8n8Jx0XcqvsbR+XVq2UFUtpf53w2Tz/N9f22zzuA/som+Ghv9ov/S7yx9+/fPzY/+B0W9luNn/78OXjL7+/++GXPz5/fv/ufx8+/zH+6L+/ffhllL9/+NL+t7Xz4y//amUj/Penzx87+ut9fPp4/FHLvD6cKOPj7br2KoF2GwyCNkBBYPS3z/Pm88U/bxz1b5fjlyuQUIGaHlVAH3++3RWKB7BjAkebo66SVGavRYN6j6KqU7TLiVsUYgcoUrpF0VKRU9jxuBb1LQJanw9ofT6g9fmA1ucDStshyhYRbVfDj1lsy0JBcgppOl7B0afRxWF8kyNlcJTjDTjsIceuY0wIHZP5llkuUmxqYWyM/FclKCpfppB+CTEp2rX6PQpLoDh3yQsK3g1SNa9GW+WRexxEXo8GYzppl7Ov4BAGh9JDjm0eLWH7etxLxakGxWPD7luiipak42FLZDM7loqWHPaYgR4zJOSvZHqPobpL8pHuMZRgyLcYMnu+yCr3IpkLIlkeM6TnHVKfH5n1+ZG5CwX7uCxaTheNfzfHhiAlt3nKdocgHz4oMx33CDxJZH5Yg83nW6L1vmwwpvV2OXyZwnDl2qDeokjiw7otjTym0M2ozJZhLqvBQS9yXd4FgwjBOF1pveyPsqE40KNtkU8fUuyuO9veTWT+I9mjpmwDWhHQTHarT3KpoKj5FkXJ7vIGH1P0zPxkt5o+3a1mT3erpe/crRXXBG0Zrdzqk4q0KbXcGhltdc5r0aaN9JAiHU93a6KnuzXx092a5Pt2a1vcNARUHifhZM8HND0f0Px8QMv3DuhphOrNQY4M2taM5ZbVhJD+2i7MQ4rMT3drlqe7NevT3Zrt+3ZrJcNaCt242Km4bq35cRy+89jkGpdLB/GpGnyVgg6KFZDTck7bNr986WsZ177t4isoWj4/UxTe3ZMxLsD1TiXa/rN3SNtdlseV0B3HERyni/Dy9/uZshmaJdb5SluPiTuJljn+xrG7+sy4js7ldMH1FccueWIJRU+zatsd/zvDZnwy45qNm1Efc2wvP1MM8dMFwqvqkbH+0Tbaj4ccdTO9U87uE8r1cVsqbxctsa5VbjG0xUYOqz2ORtXd1gDylpbTYmPLxZeDUQ+sV7Z15IfV2Jqtei3ap9JDs9W8i4aVWDdNpxv3TK8gyfk4LZymRyTHdq1QsdBnjxvT1u13s1pURI4i9qgi32ApBRfldL4efhVLW+7DLE10ut+6HhSN1fW2m/w4p+9mFkEao3Z7ENtQ/KIpm3TaNnSRx9IpFZq+4NjdLLX6Y82wZbJNULf38/AdnSjsZltOFz5ftWWTUDPm+5xPN0uvimh0bJbHtaBNBuF2BRpzA5fTHueLeBA/P1USyfNzJe32kq5NlrTbfLk6W47F/Genyz2JRHpvfbMhKc9OdluKq7Md8fH0dHe1Ldlu9u7FaxBief4ihFif7piLFLt4sL5F3+bn+3Yb04vXMvuUmLEpruXUuy9T4m4nhLJily5nfTjZ7TkKOMqpMV9xbJIqJ8+pXE61kBcMstt9xXZK231Nj+5KSTbjI2WMj5TP2yHlFfVI2J5qmwL2PMdpj+t1HNjkslRvcsQdcoM321IOcJwvdL/i4F3fYt/yOB6ODt3eSZlhnJfH67Wku2rEXpelUt6AZLOnsCfJiEjrInsDEtPbzTGQnC4gXktyPE8S5m3NqXdJKF8j2Q22GPJUZDPYjN5gsF0m2Q22LcnVwXaZZDfYvtGca4PtGyTH8yRXB9ue5E0GW5W4lDhuklSsJVA1egOSlN6AJNMbxOQuCce5ND6fbXslScGK01HL7ZqkILk5TnjcSk6Sdn17lwSbr0zbeWdfEwmSdJekoDm82QamvCPJOG7H26S0255Sydglk13vbEkUw15V5C4JjpCo7gK7JTGNU+DpbkySoiYp3W1OTF6aCr0BSbU3aM5tkowdq7aCRW9AondrEtcnWnapoOyu67EqkM7HtsprqoGNRC1p05bdxtXz1bAjbrYOzfdCapGi7bg7Vtsncat03M0kZ5KWaJ9vzn0SwkKp0d2x+jeSu5nEGHNfu5XcTBa7Law3GGls8YDM5ixYu3p6uhrbWQ9rz1x4M03Ust0VQA5Jp7nm5ebTdY76kGPbmBpLnHUzXfFB21XwEvsC6dGSHh+7Faw4ScvldAn9FYfsdq9wxqRdD6R7HBIHqeR8oOBVHFTfgIOe5lCs2qiWm/Ew3Au07av6mKPu+hbXRK1vHx6TZtrtPafgSGaPObY3R3a6rzlucXCsgfP5XNhXHM/O/d+oReSgo9LjWth3rQXF7hef1ybzqzjkDTiOpznCbyz2eGzwdusb5yNIT9P+qzhUcAOv+hYc+SaH4YCYpnSXA6c0tNDzbbnLYQfaYnQ8zyF3OTQ4kj7mqM+6dl8LOI7Sxi1CT+eObT7PyB1pk8FEns/nO46r+VyezqT7WlzL55K/ay0u5vNvcMgbcBxPc1zM57vdjKv5fMtxMZ9f58g3Oa7l829wXMrnl9tyl+NiPr/MIXc5ruVzezqT7mtxLZ+bfNd8ng3L/bk+jufuEamrfttyXPTbdY58k+Oa377Bcclvl9tyl+Oi3y5zyF2Oa35Lzy5DfaMW1/yWnl2F2q+XxBGotoZTb625yDhPPDjkvEz5Og6NQ8fnE8M3Ofh0QuXlkbD9QlaNg9ibx1V5v8J46RAU756VungIal+Pa4egrnM8PgT1DY5Lh6D2HNcOQe05Lh6C2g2QNsgMA3W7Er4jYTwVKMx3d8YZ532Z890NXMExyrbmqm9Astti2J0uS4ePs3Q6zv3idBnvNqGadzW8e/oqB9IXJGnXlrh50dPTlvLi+7N49/wUc+ytcz5/19KLdLZ7dIlSHJ84b4t/TVJ3e6bYMq2Pv1zoGxHB4VTW83fyvIzI7rGhq8f1efcI1NXj+lx3D6FeOq7Puz2oq8f1uW4fQ712XH9PcvG4Pu8eg7p2Kpz3T1JdO9LdLLrbib50pPtqW7Ld7N0Uywbn2eoliRz8fMfIbtPkWsdcpdjGY2eYWmCYuyG9+ASE7J6huvoEhBzl+ZDuKDBRVU73KK7aRXZbDRftso/pxScgtvOuHOfrbn4478ruKaqrE4Ts9qKuThCyewTq2gQhlJ+fIGT7CNTFCWJfk6vO2y71X3Ue09PO21Fcts3uoZ+rttkG5E1swxa2OR1n+8o2nLb33vh6pfPpHnoZkfz0/seW4+L+hzy9J/WNWlza/5Cn96T2tbi2//EtDnkDjuNpjmv7H7L9lr5r67F7jmvrsa/gyDc5Lq3Hfovjynrs9bbc5bi2HnudQ+5yXFqPHc/QP+fafS0urceKPr13up8URGJSSI8nhd339tmBQ052nJYfXk4Kew4cYLOjPDxZKLtNqYunE1/B8fB04uWgyvF4YUhs+228mGmb+crjxth2UTfHom6+x1Hi62PL6TtPX8VRcdIyH1xvceSCVf9cTt8K/BXH9ht+4mghtVRS3oKF6F57qiAm5+emXsfBKTju9W+pOCVdqj3um6RvEddXsDyO6/H8IqbsvsuvbV5U7B+cvyP9ai2y4SRtq8Tj76MZX+T7+FbqyFjmzkQPv3JI8vbLjy59S5jkN1hMlfwGi6mSn15MlfwGi6mS32Ax9RsdTPH9B/m8L/NVB+++6icOOp+nvOvv/zAzjHY738S8HKy57tZkLn6j1DdYSomvCKzCN1niBrN/L9X9ulz6dqs9yxt8u5UZviywddDjLwvcft83Hg8qcryg+Gf78cPPn778/YWo/Q1QvTP6W3D6/VR/Z84oyyrrLPs7c/qKbX//0Cj76wHrfP/QKLWvntB8AdEE/YVNfRG5v4JoguKgzg+Nt1/2X4y3Xw4wXl3a31M03l1a5guLJjAH4/2Kx3yH0QSdeLyAri4w3gQ1ADkYb68q881GE6iD8Y4pmq9tnSA7KA7qAuPtlwOQA3YgDtSBM5szmzObM5szJ2dOzpycOTlzcubkzMmZkzMnZ07OnJ05O3N25uzM2ZmzM2dnzs6cnTk7c3Hm4szFmYszF2cuzlycuThzcebizNWZqzNXZ67OXJ25OnN15urM1ZmrM8/Xy05EQAwkQApkQAkoAxUgaBA0CBoEDYLGfBWb+dtmJ0pAGagAVUfjlbMTERADCRA0GBoMDYYGQ4OhIdAQaAg0BBoCDYGGQEOgIdAQaCg0FBoKDYWGQkOhodBQaEzTZn9n7UDTttnfWtsvyudraycSIAUyoITPZiBoTP8Wf6HtRNBI0EjQSNBI0EjQSNBI0EhoR0Y7MjQyNDI0MjQyNKahy3rn7UIFCO0o0Jiuzv7i24kESIGgUaBRoFGgUaBREauKdlS0o6IdFRrT4wMhVhWxqohVdY35utyJCIiBBEiBDCgBZSDX4MP7g+kAIiAGggZBg6BB0CBoUAFCOxjtYLSDocECpEAGlICgwdBgaAg0BBqCWAnaIWiHoB0CDclAiJUgVopYKTQUGgoNhYZCQxErRTsU7VC0Az5nQ38YYmWIlSFW8DkbNAwaBg34nOFzhs8ZPmf4nBM0EvoDPmf4nOFzTtDI0IDPGT5n+Jzhc4bPGT5n+JwzNDL6Az5n+Jzhcy7QKNCAzxk+Z/ic4XOGzxk+Z/icKzQq+gM+Z/ic4XOu0KjQgM8FPhf4XOBzgc8FPhf4XA7XkCMDFSCPlcDnQtAgaMDnAp8LfC7wucDnAp8LfC4MDSYgBhIgBYIGQwM+F/hc4HOBzwU+F/hc4HMRaIgBIVbwucDnItBQaMDnAp8LfC7wucDnAp8LfC6YzwXzucDnAp8LfC6YzwXzucDnAp8LfC7wucDnAp8LfC4JGgn9AZ8LfC7w+XrfccELjwveeFzwyuOCdx4XvPS44K3HA6Ed8Pl8FfLQyOgP+Fzgc4HPpUCjQAM+F/hc4HOBzwU+F/hc4PP1YuSMNyMPhFjB5wKfr7cjj89CAz4X+Fzgc4XPFT5X+Fzhcz1cQw8DSkAZqABBg6ABnyt8rvC5wucKnyt8rvD5eo1yxnuUO4LPFT5X+FwZGgwN+Fzhc4XPFT5X+Fzhc4XPVaAhAoRYwecKn693LRe8bLngbcsFr1sueN9ywQuXB0I74HOFz1WhoegP+Fzhc4XPFdftiut2hc8VPlf4XOFzhc8VPlf4XBM0EvoDPlf4XOFzxXW7JmjA5wqfK3yu8LnC5wqfK3yuGRoZ/QGfK3yu8Lniul0LNOBzhc8VPlf4XOFzhc8VPtcCjYL+gM8VPlf4XHHdrhUa8LnC5wqfK3yu8LnB5waf2+EadgiQAhlQAsr4bAGCBnxu8LnB5wafG3xu8LkRNCgDFSCPlcHnhut2Y2jA5wafG3xu8LnB5wafG3xuAg0hIMQKPjf43HDdbgIN+Nzgc4PPDT43+Nzgc4PPTaGh6A/43OBzg88N1+0Gnxvmc8N8bvC54brdDBq4Pzf43OBzg88N87kNn/fXDtrweV/lt+Hz8Yry4fP+ZZQ2fD5RAspABag6Gj7vD1fZ8PlEDCRACmRAQ6O3Y/i8b6TY8PlE1dHw+UQExEACpEAGNDTGC9gzUAGqjobPJyIgBhIgBeoafXfAhs/7/o4Nn0/UNfqGjQ2fd5SGzyciIAYSIAUyoASUgQoQNAgaBA2CBkGDoDF83neF0vD5REMjdVSAukZfb0/D5/1ZhzR83h/hSMPnE3WNvoSehs8n6hp1/G8C6hp9VTwNn09UHXWfc18YT93n3A8NpO5z7iviqft8IQWyflaLO0odjc/mjnpNu8+ZBnMdT5b0teUDiMa2WUcMJONhno4UyMaDHB11jX4QJnWfc3dZ6j5nHXxdo58eSd3nC3WNvtGXus8X6hr9uETqPl/IxoZbRwmoa3S/pe7zhbpGd0/qPl+IPGqJPWoJsUqIVff5QsmjlrJHLRWPWvf5jFpGrLrPF0KssgAhVtmAkkctZ49a9/mMWq4etYJYdZ8vhFgVAUKsigEhVt3nCyFWpTqqiFX3+ULsUaviUauIVUWsus8Xyh61Wjxqta6o5e7zEbV8eKxy9/lCHqt8KJDHKh8JKK+o5aOsqOXu8xG1TMeKWiaPVe4+X8hjlUmBPFaZEpDHKnefL+SxynwAeaxy9/lCMjbzO+oaPZfk7vOFElAGKkDV0fD5RATEQAIEDYGGQEOgIdAQaCg0FBoKDYWGQkOhodBQaCg0FBoGDYOGQcOgYdAwaBg0DBrD5z3v5uHzgYbPJxoavReGzycSIAUyoITPZiBoDJ+Pvxs+nwgaGRoZGhkaGRoZGhkaGRoZ7ShoR4FGgUaBRoFGgcbw+UQZqAChHRUaw+cTMZAAKRA0KjQqNCo0qmuU4wAiIAYSINcow+cTJaAMVICgQdAgaBA0CBqkQAaUgDIQNMj7o/ABREAMBA2GBkODocHQ4AKEdgjaIWiHQEMECLESxEoQK4GGQEOgodBQaChipWiHoh2Kdig0FP2hiJUiVoZYGTQMGgYNg4ZBwxArQzsM7TC0Az4vCf2REKuEWCXECj4vCRoJGgka8HmBzwt8XuDzAp+XDI2M/oDPC3xe4POSoVGgAZ8X+LzA5wU+L/B5gc8LfF4KNAr6Az4v8HmBz0uFRoUGfF7g8wKfF/i8wOcVPq/weT1cox4CpEAGlIAyPluAoAGfV/i8wucVPq/weYXPK0GDMlAB8lhV+LwyNBga8HmFzyt8XuHzCp9X+LzC51WgIQSEWMHnFT6vAg2BBnxe4fMKn1f4vMLnFT6v8HlVaCj6Az6v8HmFz6tCw6ABn1f4vMLnFT6v8HmFzyt8XjGfV8znFT6v8HmFzyvm84r5vMLnFT6v8HmFzyt8XuHzCp/XDI2M/oDPK3xe4fOaoZGhAZ9X+LzC5xU+r/B5hc8rfF4LNAr6Az6v8HmFz2uFRoUGfF7h8wqfV/i8wucVPq/wOR2HizRIATmgBNSAFgwpYA5YAoYaLN9f/xuQA0rAUCMLmALmgCVgqHGocahxqHGoIQE0GG3jaBtH2zjUuAJKRFIikhKRlFCTUJNQk1CTUJOIpETbNNqm0TYNNY1+04ikRiQ1IqmhpqGmoWahZqFmEUmLtlm0zaJtFmoW/WYRSYtIpohkCrUUainUUqilUEsRyRRtS9G2FG3LoZaj33JEMkckc0Qyh1oOtRxqOdRyqJWIZIm2lWhbibaVUCvRbyUiWSKSJSJZQq2GWg21Gmo11GpEskbbarStRttqqFX0G0UuocglFLmEcH9AdGhAC5gC5oAlINpGkUsocglRqJEE1IAWMAUMNQq1yCUUuYQil1DkEopcQpFLKHIJcahxDlgCRiQjl5CEmoRa5BKKXEKRSyhyCUUuocglFLmENNQ0+i1yCUUuocglpKGmoRa5hCKXUOQSilxCkUsocglFLiELNYt+i1xCkUsocglZqEUuoRRtS9G2yCWUQi2FWgq1yCUUuYQil1COts1cUgfsamUcBR25pJ9Gp3F8bxzmpnF+z2EKmAOWgBVw5JIFKSAHlIChVkKthFoJtRJqJdRqqNVQq6FWQ62GWg21Gmo11GqoVaiNg30OKSAHlIAa0AKmfvT/GDAHLAErYM8lDikgB5SAGtAChhqFGoUahRqHWs8l0ldVaRz3c9jVeLSi5xKHFrCr9XPtNM78yToX3NX6JhmNU38L9lwyvoiJxrk/h11NB0PPJQ51PZlD4+yf2PzbFDAHLAG7mg21nkscUkAO2NXSaHzPJQ67WponmVPAHBAHsBnn9GkcBZT+iAiNs4AOx6bi4O25RPJoW88lUuZvLWBXK5MsBywBK2DPJTLMO04FOuSAEnCojer0XDKe7KJxNNBhDljmsxI0DgfKHL75CEgBOaD4p3omWciAQimPdvVnZ/734cunDz99/vjfdz/82Z8c+eOXn/0pkfbj7//3m//PT18+ff786T8//vbl158//uuPLx/7EyX9/94d44mS9u8/2ro/U3/ihOJX9T1r/xWvP/2HVnrfNuL/+f6d9J/a/qTm0n4af64tPWrR/iP1H4u1H3P/vICyrQzn6n/Ruqxw/3/9WtLwq2YRrv1XKX6V38v4YO6/kvlHoqjI8V7tn3/1B2j+Hw==",
|
|
3728
3728
|
"verification_key": "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"
|
|
3729
3729
|
},
|
|
3730
3730
|
{
|
|
@@ -3976,7 +3976,7 @@
|
|
|
3976
3976
|
}
|
|
3977
3977
|
},
|
|
3978
3978
|
"bytecode": "H4sIAAAAAAAA/+29C5hlV1UuOlft3dW1q6prd/W7q1+7+pFn58lDRFBCEtKBBEJoEvKCvIomIUl3+pF+pbvTkAb0iEfIuR4RrhyvcvEK6FG4KveqICpe5XB8HR8XUURFkaMSBDxeLsphwhpdf/31r7nXWnvs7g2p+X3de9WaY/5jzDHHHPO55szCN0M7/92zd/c9M/v2verBr/93166Zl3/9VZZHNfPfxflvfD8Z5gaj7YRSIatAOzdRBR5Z6D+PodB/Ho3Qfx7N0H8ei0L/eQyH/vNYHPrPYyT0n0cr9J/HaOg/j7HQfx7jof88loT+85gI/efRDv3nsTRU51GHz2Q4M3yWlaf9BvbzxLsq/JaH/pfRitB/HitD/3msCv3nsTr0n8ea0H8ea0P/eUyF/vNYF/rPY33oP48Nof88Nob+89gU+s+jE/rPYzr0n8fm0H8eW0L/eWwN/eexLfSfxzmh/zzODf3ncV7oP4/zQ/95XBD6z+PC0H8e20P/eVwU+s/j4tB/HpeE/vO4NPSfx2Wh/zwuD/3n8bTQfx5PD/3n8YzQfx7PDP3n8R2h/zyeFfrP4ztD/3k8O/Sfx3eF/vN4Tug/j+eG/vP47tB/Ht8T+s/jeaH/PK4I/efx/NB/HleG/vO4KvSfx9Wh/zxeEPrP45rQfx47Qv95XBv6z+OFof88XhT6z+O60H8e14f+83hx6D+Pl4T+87gh9J/HS0P/edwYqvOow+dl4czw2RnODJ+Xhxp8biKGcUND3HAQNwTEBfu4oB4XvOOCdFwwjgu6ccE1LojGBcu4oBgX/OKCXFwsiwtZcXEpLv7ExZm4eBIXN+LiQ1wciJP3cXI9Tn7Hyek4eWyTu9Nf/xcnL+PkYpz8i5NzcfIsTm7Fyac4ORQnb+LkSpz8iJMTcfIgDu7j4DsOjuPgNQ4u4+AvDs7i4CkObuLgIw4OYuc9dq5j5zd2TmPnMXbunvf1f7FzFDsvsXMRG//YOMfGMzZusfGJjUN03tG5RucXnVN0HrFyx8oXK0c03mhYsdBfHoqDFW7B/psf2/TN1yN59BAkq7AfJBshdtXSP/apEQaslD58I31MM1Iv/U2WvlUv/TfMN4bvhfQoi+E28t8fgbQ/QjyN5pNA80miMXnr6Tt8b4/5nRwPc/NoGAFkG62HvQzzZKFB7xC/FXoq+ywjPOPH+bO6MQ40xi+juKaQ0+IWQZzpP7q+C4COy3aE4kyWGH6E4hoQ9/b818oE5aqgo3f0aC/P66O9XPGtaC9NivOwF8RgezGMGD5JccMQ92cUtxji/hx4PwOeH82fe/RJp314zTboG10C5o9YJq+FBv3GYHoy3Y8IeotrQRzqPoZReN8QWIspndE/Pf+dyH+xbCx9W/AfJv5KbmWbmcBqiHdGH/VzEchsmFcCbccevrTvj//3j735/b/+k/vf/a4fmvzEkreNbR89cerU59f94/ofefLUj1vaq0CWLJQu72FLf7Xi/d2/0Lj1NT/7ld1j17z+Zw5+4v998YEl6+/6yKY3vevW33jLpr971Rss7QtU2s9+/9tPtH/mrf+pc+HHvzx8zb//+1d98dpFz/rExx9d+2uv++rfPfmEpb1Gpf39W7/6Zx9oP3Hk0Js/ePRZ5y2/671P/PEXPvebH/vp9hc//b6H//gZlnYH5LlOP+vaeumXWvoXQvoqe3It/YvqpT8t/3X10g9Z+uvhZcceTv7ET/7ZFW/++KV/9dXR77v+rscPPe3f/cHN/3Bkzbu3feb+961/76SlfbFK+5f7r3zL/tUPPvMfRn7nzZf92LoNn/rSuz/wt/98eOZZf/+3n/356S9a2peItGsuP/c79/zw76745Hmb//R5H37vxf9h7Ze2PueTv7jjx578ym/9S5jV2Q2Q5wpldjrPL62Xvmnpb6yXvmHpXwYvO+k0p5tiS7uzHu/T6V9enreFRZb2Jp02e/3mff+x9ebs+o+87qIPjI9+5O+ueOfzr/z4xx7/vk3t977T0t4s0l7wnNaT7/q+46fCX7z7v//AP1/wS8+7aHLjFZMX/7e3/9G6h/betvZJS/sKYxQq5Xm9pb8F0pPsyWDpbw3zZS+b9rZ6vE/X79ur8z6d9o7qaU/XkVcaWKik89O28qp66VuW/s566Uct/V310o9Z+rvrpT/tG++pl36Zpb+3XvoVln4G0lfoC3Qs/avxZSgVtlvaXfV4X2rpX1Mv/WWW/j5IX2VsZenvr8f/Ckv/2nrpr7T0D9RLf5Wlf7Be+hdY+ofqpb/B0u+ul36npd9TL/1dlv7heunvsfR766W/19Lvq5d+xtLvr5f+1Zb+QL30uyz9I/XSv8bSH6yX/j5Lf6he+gcs/eF66R+09EfqpX/I0h+tl363pX+0Xvo9lv5YvfR7Lf3xeun3WfoT9dLvt/SP1Ut/wNKfrJf+EUv/unrpD1r619dLf9jSP14v/VFLf6pe+mOW/g3wshNKhc9b2jeqtOk5hDda2jeptOk5hP8Q507iHNCb84mfuNS1Jk96YP99D9y3//A1M/tf/s2nK3c/tH/m0H6cw4v64bnUFv09Sn+P0d88v2jv1TxlmWBzhksIL4TZucEJ4tMJpcKGjPBC0HO8ht8iWSryOz3HO0H8OH84xxvj2kKWNsXFwH2VtuDTFnwU1j5HrGOOWPsdsY46Ynnm8bAj1kFHrCOOWAccsWYcsTx171mHjg8o1h5HLE+b8NS9p33tdcTyrNueNvGwI5anjz7piDWo7aP1t63vgH2NrODX+PA749MKPfWzslS+JgS/FP2SBP3SkvhjgJ33i6+aufvArut27woUuKt6VYGI64luZ0I0xs3oH79fT+8aghZDzN6q/DnP3gtm9t/zmp137do1c+/XM7mPUzDSlQXvU0ZlnfE2SdoJpcJQGaNE/DNtlFGry/LnXKvX7b7r3ivv2rPvwAMzuHUGzZS5ZISK71SZZiAZvhsluivp7x0iXRDYuO1rkt53QqmwzKximYi0uOWAvYTiVkDcBMWtBKxXAx0HzifmJw6JnxidxWU6lhXLajnFLYW4FcCby7wt+FjehgT9UsJSQz4rl278GiIdD1lTw+oyNdHyEcJsM7REyNxHj7Fi0D2G5W9pPX7LU80aYpo8putJEWdYVkeHC7AsbZPoP5v/tokuhluJx6SQF9/htp+/ItlRt2wnvegR8UwufIf4rdCTXWapclPduF79bxm9ozzsr1m36PeGC7AsbZPov5z/tsP8NoHtZJmQF9+hnTxJsqNu2U5q6rH0lk/Db4We7DJLlRvmj+1kWT1+zyujd5RHtd2oW2wDhwuwLG2T6K271ya6GNhOlgt58R3ayb+S7KhbtpOaelxf1k4MvxV6ssssVW7Kr6pys7RK3zxtXFbfCuuYI9ZRR6yHHbH2OWIdH1Csg45YRxyxDjhizThiHXLE8rT7QdXX6xyxPG31hCPWI45Ynrr3zOMeR6xBtdXHHbF2OWLZ1gY1/8J9HewLVB1bIJ7Jie8QvxV66ltlKb2osYHlb0U9fpMZpUd+iMnzQCtFnGHZ3OtwAZalbRL9C3OFtokuBu4TrxTy4jvsE1+d404IeXl+oKo9pubKMB3bY83yurqsPRp+K/Rk/1nKPpReLH8r6/G7qkz5ojym61UizrBW538PF2BZ2ibR30r2uApkYntcJeTFd2iPL8/myo66ZTupqcfnl7UTw2+FnuwyS5Ub5o/tZFU9fleU0TvKY7peLeIMy7aKDRdgWdom0e8iO1kNMrGdrBby4ju0k7vJb6G8PF9V1h+2RXqjGxHpOvaQ/uzwJ3osz5st/ep66Zdb+jX10l9l6dfWS39FLK89VF74KTSvh9m2wkVhtl7imqmlbRL9/z0ym24/+RHeuhjCbJnW/MR8bVk/Yvhen4Hzp7OcP57rGROytCkuBu7Ljgk+Y4KPwjrliDXjiPWoI9Y+R6wjjlh7HbEOOmJ55vGAI9ag2tceR6xjjlgnHLE87ctTX4ccsTzty7MOHXXE8rQJT79q897jIo77AePwvkK7XHp3Eh7jwe1ynX7AOPEr0ku13UnYG2KtICq+y8Lc3GNcg97x7qSr6e86u5Nq7tqYMquYEpEWtw6wWxS3HuLGKG4DYFXdnWT5qbo7CctqHcVhL3s98OYyV3wsb0OCfglhjYt0Vi7d+D2Va6kqJ0urdlFxPS07KqjjPZw2xJqIa4huR4FomcDN6B+/X0PvGiHtnlIDxDImEwM3QIi1k/gsNEALDdDpsNAAhcFqgBoiHU8P8bRRDB17SJ8ItSxOTX06V9yEkBenhjBvi7rkr0n0N8JU2GdyfpHWphDzWvj8Aw+89saZ/Xvvm3lkRu3971Z1rqe/XyzSqWAmwR8QxzASenJOpZ2h4beCLuZOKBVOO0M1SlEH2lVzhmwQqBVExXdZqO8MX0x/13GGNT+BruwMRygOnSE7yl6coeWnqjPEsmJniJWYnSGW+ZjgY3kbEvTjhJVyZN34LXRZvhkWuiwQFrosYbC6LJxuUZhfqy1tk2iX5YbZY22es3uZZVxo678ZFtp6CAttfRistl55GV6n7udUCfJODrDSx+Z+qUePclOPnvDl0ftenGfSBnhYR7iOW6tVtNfB0jaJ/oqh2XSX588xz9vy+Nzb3HTXA/fde9f+masfevjAzIGZe1+8e//MviseuvfqR2Ye2l95uPcC+vsakU4FU2rNjQ9jqiNqQVWyUYrjDSYYh90gnorlj/wwDjcJNSkOm8NFFIebX4cpDjciLoZnDspxmW5juveVcFyjYVYf6GjNEeDHvzw/a07MNoMxDRut0V89NCvjztzzK0fADpQPOQhh1qY2kOydUCqU7joYfivMb3jqdB02ED/On8+RAqgVRMV3WBs47kx0HTbR+04oFTpmFYre4qYBm48U2Axx6yluC2BV7TpYfqp2HbCspiluI8RtBt5c5hsEH8ubOlJgI2FtEOm461DEryHScbcwo/c4n7lO8Ob5zFeC57h5qlgP60KxHuxvNRBjfVt8DD3a681lPY3ht8L8sq/jaTYRP85fPU+DloJcbiJUo0FaDDeBZEjPZ0hy6Y2JdBxMY02S+SB0ml5DnTTM1zKSW1k7vuNOLaY3OsVnaY98lgo+3K+J4RaKm0zEqQ+D+cOWGHhdU30AoDaW80EDaxKYUwIzlt2qxixe/HcO0ClLt9bJymAbyINp8e9FRBuD3THQJNrvA7t6lOwKazHb1cYucqfsamMo5rO0Rz5LBR81uGbb2STyqlprLudpiGPb2SzypVprxtwqMGP5LGnMpePyj8E8/rnwvsogsqzHN/wWyVLX459L/Dh//IHJefX4vTyj9MgPMU0e0/X5Is6w7G6x4QIsS9sk+v+YZ6pNdDHwBybnC3nxHX5g8tahubKjbrOCX8Pld1y/MO9WPsYH/c1OkOcdQ3Pzgn6qEeb7Net5sq/6HlgZfif5KkzPZafqSd38nyPyOBHm64Y/QFT2fW6CTzuRn36VJx+4hH4Wy/M9VJ7nQZzy0ffkv02iPw/K86epPFVdVHrmdqmqnpcJPv3WM7cv5zvyQSw+rPFCwmI/aOVker4A0l9I6bZDHNLhqOtCeL9d8Fb4htHNBj80pPOmbBB5NYl+CdjgR2ra4PkUh20FtosoB+oBy+yeoPM1LOhT+fotGHXeOjUX09KjrrAs2P8a/X8BzDumtJyYL2wPeAunsocLRb6UTreH7rxRzzsKeA+HtC02if4PhE65XcD0qh7xR8wXdJGd6zem5ztNMV2vfkTJ3K1OfrJinbSPMtl2/3nxbLpPUZ1M2QjKzOOIqnpeKvj0W888RtjuyAexuF24mLBYz1ZOpueLIO5iSncJxCEdtgsXw/tLBG+FX7ZdeHJI563IBo1Xk+j/FGzwi4lxccoGt1Mc6pTbhW7+cC3Rm9zDId3eNon+K4l2QdVX9LXcLhj9vybaBeOL+Uq1C8oWLxL5Ujq9mLC2CSzUM7cLSqeY/22U/9O205jNf6pdsPRqPuI2isP5iPMorgNx3GedhrjzKQ7nI3huZAvEsb/bCnFoIzwfMZHID64r8nwfztttojg8HKFDcXgowTTF4bzdZorDwwS2UNwUxG2FvNq8HS9mr83f97imJ7chpeZFs4LfEMq1B7h2zGvOGxz5INbVxGejI5+Nifx0BB8rL6wv/ViDNfxWmF9368yTTRM/zl+9lRH0NqwVRMV3WZibe4w7E2uwW+h9J5QKW9UsqwWeyVIeCT16h+JwxqDqGqzlp+oaLJYVtzDo8c8B3lzm04JPJ38eEvS8njst0lm5dOPXEOl4vTKj90VrsIbRJPpnQwt9J/VQFK8OyMe9BJO9aAdJh2Qw+u8GGXZOacxmQb42FWC+tDGrjysaGjMITJWvzZQvlmGaZDD6q0XvpxHm25+ysWn6G9e3NxfIp8qJZcX6VJSfDuXH6F+UKKeOkMHkimFHFxmYZnOBDC8RMgiPfuXuPYdzjx4o8HenvDbNmue16o7AKQqmjWiFZpFqZ8UmkW4T/d0SMsWc2xzE6c94H5jZP1OQd26tRgt4DgUduA9u6WKw1qcD7/vRb+jkz62gvVQnlAoZW67x4/zx/sFpIUtbxGH5sh2l+MQytX5/XqYv2797b1GRlu1QZEIsTh8IKxPvYngqm0G17iMbQQf+RlR8l9J8t9L2+IaIm5NOKBW2qAV8C2rAzNv0ynQtY6jafbT8VO0+diBuK8VNQ9w24M1l3hF80Mky/TRhdUQ6K5du/FT3krcBslco6j5yN8voD0BzfPPU3HzyDWlvhDjeotcJc9PG0ONAdLKsJzH8b82B6FJCNRqkxYD3TiF9aoteDNeKdBzYk5xP7zuhVLhALSdYsDic3mRvgVOTHYrDadc3AB0H5UksP9Ha75maxWU6lhVr3YUUh9a9neLQE19EcTjIv5ji0MteQnHoZS+lOBzAX0ZxuKx7OcXhcvDT8mf2FD9I04E122s5HWhYE2G+vvmsbtUNU1v12yL9+gSf1T3yWS34jIt07B1r6rF0P4s3MPf6qYTawKz0olphS9sWcdP5s9md2cnKfJz2ja1RNC3fhyvmn1lWr2f7ivlJIYu66+1BoOO4hng3lMA66oj1mCPWEUesvY5YM45Ynnn0LEfPPD7siOWZx8OOWI86Yh1yxNrniHXCEeugI5anTXjWR8865GkTnvo64Ih13BHLU/f7HbE8dX/MEctTX56+cI8jlqe+BtUXeurL0+c8FfpMnjbh2W576v51jliedu+p+0ccsTx175lHTz/h2Qfw1Nfjjlin8l+bY8J5CF5NUmP+iQQfTD9RAkvNH6TyWHTkhdNJ0ybiM4huR4FomcDN6B+/fwa9awhaxMajgcosZmwj7E4oFS7PCC8EPa1k+F6LGWqncAfe8bTS+UIW9QXWa4GO4xriXeprrqOOWIcdsR51xDrkiLXPEeuEI9ZBRyxPmzjiiDXjiOVpE576OuCI5amv/Y5Ynvp6zBHL01b3OmI9FcrxmCOWp74826E9jlie+hrUdshTX57+3tO+PH2OZ330tAnPPpOn7l/niOVp9566f8QRy1P3nnn09BOD2v963BGLp0lwXM3TJGoMuy3BB9NvK4HVEVipPPZ5msREvIzodhSIlgncjP7x+8voXbdpEt6VcypnZtMiNXcVzZvqQawJ4hmf+ePyqjN1mH4ywWd5j3yWCz7jIp3lu0c9jqH+UE58h/itMD/PdaaX1C45pRe1G8zS8m6wGPiQsI7g0xF8FrAWsM4WVmq3J/8aH36XasrK+JG6fBCLD3/rQHr2vx3i001v6hNjxrJvGGK4E2j4cEI8tCII3rdAPNL/bJ4g7gL/r/lHEuqLKDx85f3NtKyYFmVtEv0vw+ErP59jKj2zb1TfiHDZIV+FyW2axYVQruyWCxlSWFheK4neymK4gN7wuOw+DGXHh7wYTZH9dEgGLKNAGDGw/Rj9r9ewn48207Ky/awMOv/vBPv5LbIf1HHKflZSHNpPJ8zFxDjeIV+1T4TpU30vPkRXyZ6F+b421T1vh2Id9bgT/3xeOsPAX8KgHtSXMGsoDr+EmaI4PDyI2wY8MGgLxV0CcagPDg36G3UUzfD3wPaZLhBPLEM+hAcPOOED5vBAGx4WriFZ+V2qLV1TgIXHFKiDuJpE/6H8tpBYH/+mOTdfeFC26aRHW3taRngh6H4+f/UxVY9f8qsPzB/389W3oO0w38c+AHQcV2aoj3EHHbGOO2I97Ih11BHrpCPWPkesYwMq115HrBlHrMcdsXY5Yp1yxPLU1xFHLM/6eMIRy9PuPX2hZznud8TyLEdP/+Wpr0cdsfY4Ynnqy7MOefYnPPV1yBFrwa+ePb/qqfvXOWJ52r2n7h9xxPLUvWcePf3EAUcsT3159ldf44h1Kv+1uYeic3cwDvlsSvBRh8WpeT+cc+CxtNHE0ONlSI2M8EwefIf4LZKlIr/kZUiqfFKXE7VFHJ+uU3drQnyeJqyycx8Zpe+WR8ctAybi5UR3Q4FoQwI3o3/8/nJ6V7RlwLCtGuHUEy8foRpTqlXLR0an+Kzskc/KknyW98hneUk+q3vks7okn/U98lkv+PRxOnS8rBs7W9OhPR6BNpZyKYjJB2htE3HsgocLsCwtL3sdXfTNX9V08nJ62WY4Qj6yaC4dytuBNHzGfQy4xHZ80VwZOhDHywPY1PIS7a8umk13Mn9Wy1T2NZv60I/Pt8c7Otn28az/CrZR+gAow2+F+b6tju2vIn6cP2zeyh+Px54UtYKo+C4Lc3OPcQ16x5slJihdnYM219D7TigV1quNIhb4pgLUjVowW0lx6JmqHrRp+al60CaWFVs+tjx8vzWW+SrBx/I2JOhXE9Yqkc7KpRu/hki3nDAyeo9eZZ3g3ST6t+eeRJ3TrnhhjeKNnyZ70dnbLIPRvxNk4PO/V0Eala/lIA/q3/7G+nR7Af8PgGf98UWafxD8OX9oq0VnoK8iGYz+3aADPtN9jUgfCt6xba+huDUJ2iWUF3UvO9oin/8+1SXvXP5G/9OJ8l8pZMDPx3d0kYFplhTI8HNCht7Of2fPzqXEJbFS4BQF00YU+gPUT8FSWy7SFdUYTNvr+e+TBTyHgg58L5Gli8FatZr9g9L9EcNvBe39OqFUyNhyjR/nj6cUVEvRFnFFtbQbnx7Pfy/qqChnwekDpc3EuxiiJduhB9Z9nQYaHqZPh7ny8rvUMN3oFJ+VPfJZWZLP8h75LC/JZ3WPfFaX5LO+Rz7qxHLGUsOmGO7Lf/nClj8Ax35HwSUwQwWYN5IMapZQ7eozejXbd67Io/rY6PwSvFGX3BBeUFHW1JWuyF9dD3thRVlvOMOyTgtZ1Vng5odGRL760eQYfkvkoU6T0+1a3npDYN7fjlpBVHyXhbm5x7hUyxLDC+jvOkNgvgi1E0qFi3mfKga1T5Uvg7wU4ng/KX7bVnUIbPmpOgTGsrqE4nAP76XAm8v8QsHH8jYk6LcTlrpA2MqlG79U7TYMlS6GN4k06tq4rOA3hPm1NgbuuG13xLpIYJlN88W8nVAqrCzrjQy/FXqqQ6e9Uepi2Rg475cIWdoiDic7MQ75XCL4KKzNjlhbHLG2OmJtc8KK4dYFrAWsBawFrJJYFodt9kUUh+3nK/NfNSIq+lYP5UvtqcH02xJ8pnrkMyX4pPbM8K/x4XdFe4SQp+UH227Wm7og/qIEH0zPtwV1IB0uej5zWPPE0TumvTP/5Yve/zN8x/Sdw8V5RD1bvljmEeBhcVUW9WPf+70bZvlgP8VkNNyi+oP0d+W/qs0u+jYJMbqVwZVUBtsgTpWBycPfdr4NyuAFVAYdkAvHE0X1piP4sY0MC3rEYxt5US4TLp0o+c4t4If6QJnvLeD3EuB3B93WhXbXyZ97tLuVyu6wvrLdle13l7FT1ImyU56l6ggs1GnRWTHDgh7xmkR/qyjzsnbO5Wr0d5QsVyd/IssVdcXlqmYTVTuUsgMsr07+3A7zy3yasKYFVgfelSnXjsDncn1NolwtPZYrysXlavSvLVmupst+lGsHCMqUK9Jzuar2W+0TbYf57eQqwlI+GnVaplzRVthHG/0jiXK19GX9sNEfHgA/jLoqU65IX7Vc2Q9juZ5HcWqVgesR8kn5aLUxL+Wjjf6UKHPu87NfKJJP6c15QfPCAjFWiPSB0mb0bkUBluHEdzgxzyq37A4HPQVqeFwlvl+oXFXTDvDu4+nypRdCDL8V5ptEnanHbl1Pnno8V8hSpipNl+TjaKoxvKBAjEykD4SViXcY1yE54jtcEzVT5W2vmBa3vaoRNo8UlOfrAE3RDGZR78LwmkT/o4lWqNtojb31pYIee8adUJz/SylOrSgxH2wdUV/cOhr9u0q2jsa7H60j6ohbR1wNawh61vflgv4yoOFZpcshLlWlLyU+3VwH239H8FGjb9UbV9uTy9ijsi/sDVxCcWo0p2zB6PoxU4L5YVtI1aUYWDcp20HdtEN3O8F6eQnxSfmlGFK2gLMLNhs2AtjIBzET4VxLP1Qv/d2WvlEv/UWWT97qGINhY9lWsJl7UCcWVFfB8FskS0V+p7sKi4gf54+7CsNCljbFxXA/0HFcQ7wbSmDNOGI96oi1xxHrmCPWCUesg45Ynvo65IjlaV9HHLGOOmJ52sQ+JyxL7yXXcUcsT5t42BHL0yYOO2J5+lXPuu1lqzEMql/1tAlP/+VZhzxtwlNfBxyxPPW11xHL01Y95Vpot8+evjz7q54+2rMP8Jgjlqf/GlSb8PQTg9oOeY5hPPP4ekesBb/67eG/vMoxC/Pn3AZFX4Pqcwa1X7jfEcuzPj7miOVZjoPYX83C/DnsQbEvT7/6iCOWp58Y1HkmT7k8dT+ofsKzT/5UGNd6ttsnB1Quz3GtZzl61kfPMYznvK8nlqdNcB3K8r9xnfQWeL4N4pHebolS69gV1m7vHYc0ATAQu+Y69L0Z4YUwt68RCH+8gF8MLRHXLCHLe1Z++I6rtnzt9ozSmyz8rszYRK1pm64Wk+ydUCrcrfaQGG+Lw/X5RRSHejEZ4u8FJN9wTfnK6A/x24Kev4orWxaTYa4toL2rPWH8VXPqROL4XHSy8HABPd/8Z/Q/kStefT2Du4+XF/BD+VInGWP68wuwcI8bHhh4d4HsPwWy89ku6kwRdSyS0Xc7dcDkSZ1/MiHSrS/gg3nFsr4zzM2r0f+syKuqf1h3DMfiKtSdMbWHC3XEe7jwK86GoC+z2x33hfKp2ri/7XyKQx1fSHFYr3gfqdrrh3bH+7s2Cayoh48mbsycLMET6cvU646Qg+vGR0rW63MK+KF8qXqN6avW61cVyP7/VKzX5wj5BqFeY1nfGebm1eh/5ylWr1NfsdSt1x2SoSNkKFuvLW3UA9+uezHEGS4eers2f24S/Z8n7PmSMF/WlH677TvnW0px729q3/kFFIf7aXm//mVCDygXn8Vm9H8Devgw2KDlJZBcPdr6FcrWce8w23pqj3kMXBZPE/S479x00iZ6Lhf8G7FQp/yJkOloWNAjHn8D8QXRLph86N8uI9m3V5R9o5BdHRSNderJXMFmg/hJFrdT2xM8OS36meECesPjr73/f6GvlM9HPY0TptH/W8IfKP9Z9Svfi0S+lE4vpjiUHU8vM2zG7LF+Pv9sf9lu5d8O8/0htzdYNy4iPqqPUdb+0YY+OaRxFxXg3pP/sn0tzQtG2ZeqN+fBu6rtObc3aF8XUZzq36vvV7gfqdpdlIvHh0a/BvSQam+c7HmZ9wkhVdt+/rYF2wP2h8pmUafc3piOhoP2M4bXJPotUAbc3uB3WHzi2/kVZa9T3z5E7c15QFdmXIS45xG9+Yui9sbwmkR/kdBXRjywHqCeuL0x+ksT/kCNp1LtTbfxlMmjdMrjKXWLlqqfRtdj/Vyu6ifmn+tn2fNUU74VbZfbG/SHqS/4LyA+5wk+Ze0fbeg91N6cQ7iIhXaRskesN2P5M9vjlQl7TNWzGFjnyn7V/IayRx7zoOwpezS6Hu3xJmWPmH+2x1ReY6haV3ksjraaskdun88RfNSJEnzKDaaNeX3H0Fy6CcDI8l9bE8DxfwWdlz6SwPBbJEtFfqe/M5wkfpw/K7tqZzMvgWfWCqLiuyzMzT3G8YraKNFdTX/XOZu55kUOU+rCNgsWh9eNLKE4nE2aoLgNgPVqoOPA+cT8VD2bGctqHcXhasl64M1lPin4WN6GBP1ywlIXh1m5dOPXEOnUlTH4HluKccG7SfT3Q0tx81SxHsYTerDwRiEnl4XFx2D2WvMikMmynsbwW6Enz3ba0ywnfpw/H09jXJYSqtEgLYalIBnSj9LfXHrXinQc2NNsoPedUCps5H4TBjVnzNbUgbhJipsGrDcAHQflaSw/sTbcQ2sFQWBxO4pyK0/ToTh1j4m6rmYzxeF9IVsoDs+L2UpxqZNT0bOfQ3Ho2Xmd2/L+htyTmG2wp+qEcoFbWFX+C/2WQeu3XE9/1+m3bKT3nVAqbGKPgUF5DLamaYjjfstmwKrab7H89NJv6VAcetxp4M1lXrXfsoGw+t1vUeni3y2RZpz+tvgYemyJSt+Hbvit0JN3O13rNxA/zp/VTzXDYGnbIm4UnjEO+ajRvsLiHUnLS8rc42Fs3FGZLBBjSKQPlJarKg/g1d1u6Hx5ktZkGQ5pM28S/XvEpGMqfQxlzP5MN3a9mr1yEymzXy5kURve+LK8iZJ8HE01husLxFCtaCCsTLzDOGWq2JrsKOA9HPSIkE3V6D+YWE8YEenjiPPT2VzefK07plWydkhWphkhWY3+QyDrTpIVTZX75J1ZUeZVqWmSHWkToXSVMnyvoziniR/nr17/EUuatYKo+C5lxd1qzpX0d53+4xZ63wmlwlaziq0iUs2ojlAczmp3KA53nlbtP1p+qvYfsax4lLcZ4s4B3lzm04JPJ38eEvSbCWtapLNy6cavIdKNEEZG79UOSMRoEv2fJOa9kBePKZT3WCnkVOMH9jQ17fUVZT2N4bfC/LKv42m2ED/OXz1Pg5aCXG4mVKNBWgw3g2RIz93JDv29SqTjYBrj46C/kBd3tL6/zJ/VHuU2yd0B7JTPbov0Rqf4LO2Rz1LBxyy5BeluobixMD+vFoceayfF4UrDrRS3TuSL56MU5oYE5kYRF8vukdZcummgywp+Y2iId6zTaSGrlR16AO7Cqtq2JcEH0/OcIKbrNT9KZtWvwptyvjoymyb+2wpxytvb/GaT6B8ZnU33NapveKOfyaj0zHWxqp7bgk+/9cx1apsjH8TaCfTxn/pGCvVs5ZRa37d050Ec0mGPANfA1R4MhW8Y3WxwaUvnrcgGjRffunAb2ODy1tz8l7XBbRSHvcvpMFfO1No/lgHnq+g7taJ8TeV5UeO+aZFeyc4zRtsSsseQ+oaNe679sHnk2c1+tpD94L4KZT+2DtMk+qvAfs4h+8EeWj/yn6rX2JOz0VeqXiv/wemwjq4oIcO5Qua2SI97hzhdr7ahZO5mG08n21D7tjqAy9+xGP1FYBvfQbaB/pP39qLM3Aesquelgk+/9cz9u/Md+SAWt29q/xbq2cpJfZ92IaXbDnFFt3Dj/i+1l1Hhl23fdrR03ops0Hjx3vZlYIMvIhvE9CkbTO1R5T2Oaj+iKoOM5B4uoC/a93ujaN9S9RX34LEvN/qXA2aZfb9qtJyyxar7flO8Uc87CngPB53/Ilu5PaFT9W0q5od1avSvSuhU6Sil0277hXl/KuaZv8nbLLBSV0wpnWL+N1P+jf7ViX7YNpFe9R2mSRbVD0P6NUSv6pjqm3Ade6BkH5L7Nji3cBvF4dwC72fB9Qwei+FeF97PgnMLHYpTe13U6vt5FKe+PcC5hSbl9XD+0OO6g9wvM02yoX6zgt8QyrWnuEI/SnymHflMJ/hsduSDWFfmv2rMxsvQVecNMH1qbDjWI58xwYexzCfHgH0i/r7F6P8d1Otf2zAXc6uQbwze7UjkleszYlmZna0r8rbW45e8Ig/zx0vd5whZ1BkQRWWKfNRu1KpyjYXZead8Fv+qmbsP7Lpu965AoUl/X1Ug4jqi21EgWiZwM/rH79fRu4agRewzVfXOJp9lPfJZJvj0e6pzGfHpQDoc7ryLhjupKeUY7s5/eUo5wHDnJ2m4k3KlHfjb+KW2Y1j6oi0ORa73feB6d1J3eJzyjPlkGRGzKfjGcEuBDD9HXZWarlF2VQxrguSJz9bVGKG/K/LdomzWAjc9KINa/B+juDKL//F5iuJw+MYfp+AwZD3F4RBiA8WpTyGx3llo0N+o22hn7yux2WAizC+TaYrD+sNb2KcErpUzds/70dQbfotkqcgvU21PI8zPX72FcawJrBVExXdZmF/iGUiG73hQMEbp6mzBqbkNt6O8vQW1rYVrKA5OuaZhra+6BQc/CKmyBQfLapricIDJ22awzNcJPpa3IUHPn7GtE+msXLrxa4h044RR1ArFd5sE7ybRfwJatjsLWrYs6BrFravJXtS6sgxG/+eJ1nUdpFH5QjtA/dvfWJ9uL+D/xZz/NzaQtDT/IPhz/tBWhwvkXUcyGP3fiEmbRphfn5U9cq8bbXsDxW1I0PJ2Q7XdC22RD/Hb2CXvXP5G/w+J8p8SMqQ2sbIMTDNSIMMXhAyipbhy957DBduSeZzEnp1LiUtiSuAUBdNGtFizXtYO1w71rsgCYs5t2e30sPOBmf1FW7K5FWwV8BwKOowXyBbCbKtWs39Quj9i+K2gvV8nlAoZW67x4/zx1INqKdoirqiWduPT4y77oo6KchacPlDaTLyLIZrznmwunZrZ6sC7oukLbAgR4578t0n0zbxjoVY81O4PbFjKrOzjEIWHW+oEY7Xqj8N/ww5Ehw7O4iqYrzzdCfOzCHDjP7VDSK1sG323lcZO/qxOSOIZOZwO4FWCDsThtMS7Kq7Q8i4Bo1+ZsJftoTiPMVQ9fayTP5/N08fuy3/59LENoIczcPrYFQunj80/few8KIN+nj7WEbKr+oZ1akdiB02ZXQiIex7RqxVSpC/ahXC50Bf7s6q7EJ6R8AdnYxfCWTp97Pln+/SxTv7cj9PHOvAuZf9oQ08n+8f2fJp4npvgyWmRT5H98ykRRn9twv7VjkrU0yrCNPrrEvavdJmy/259hFQfiesGyo47HgybMXu0/6uV/WP+2f5TeY2h6klwnfxZneh6DsWh/2Xfqvq8HXiXsn+0oS0Vd3zzVwdG/8qK9qVWU8vaVyd/rrqrbgvFqb4rl6NqZ2K4J//ltuvVJftbJleP9nzWT5Pk0/JV/zblP1M77pT/VO0l+8+HE/0tHJNcQLJvqyh7R8iu6hvWqaWJryGmiee2BE9Oi/W67C0dRn800d6oJWPUE7c3Rn+84ng91d50G6/zlyKoF26LUPbUeN3oeqyfK1T9xPxz/UzlNQbWTWp8r9ob9IdbKQ7rBvdlys7zdBvffxVOwIqhnl4PfSoDWQxbzWk16ddo3prbJy7N2m+Z29E+8Rtf/qMPvPDyB3m5PgYro8gilv+bR2dlyID2bbCt4odg4cxksMBfki6CuFvDLMZP5Rg2JTsMdJ1QKlxoeVkMuFY2gXAtL2qKE6eSeXcbpucJf+P7LtDNO+HzZMRm2WJ4NeEZ7Y+TbhYDXoX6LLdnGJaVD8YNg6zvHq1Hh7bAO3/ZfxjGTyV4NQkDfYrhse1a2eHZSeyLoJhO2wG+4y1NmH60AKtoF6a9axL9B6Dd4V2YY0K+lJ2iTGMUh/PrrAfFR81HKz3w1hlMZ2VoNlxzCaT0maCG3wrz81xnyWWc+BXpxfJX8yClpRmlR37qvFbT9YSIMyzb5TlcgMVnxxr9R3Mj4i/QY+BbHdWBTOqUw1gnfpXqt1qaK1POiNsO8/PO9ojrTLjV8GOjc/MyBnENkfba/LdJ9M+fmk33X8n3YFvN5cO2ab8WeGxh6YsWotm/GP0fgH/hxXDVF7kWMMcKZGgKvjHcUiDDn1Bb1o9TREdIHpO5E8qFMkvG9eTOvlDWfxm+15Jxt9PF2H/VO/U0e7KMP0B5TNdtEWdY9vVo0aF8lrZJ9H9D/qtNeUIeFofy4jv0X58m/6UO8Kvrv1I+vh9+MgY+tQR1i36rW7kqPpje6Hq0sdPp27XSh02Wfmk9/k9y3zMGbE++RO3JJMRx3w19Kx8qOQrtyf+g9gT9sdnMRCi2IbX9usinh5D2EeozhfECrKI+MJ9OaPRfS/SBlQ9LfYk0LvhlBfyVj7U8F2EF8c7osf/NJ1S1iXaJoB0RvDqhVJg0LP6iTfnYHuvSMqsLy0SkxalDPi1uBdC/BOg48PwIyhxt5aM0Xx0EFvtrlI0xlc3dTrSWZ1WObaLF0zRZX7cWyGC4+LXXy/Nfvudh09gs/sr8eYR4VSzb5Vx+GLj8WHccVPmZXLH8vlSz/PgED/TJPPekzp6O+jr/LOlLzb9ZOBv64vmZbvqyODywmdPxJz58SkwnlAqvsvQr66V/2NKvqpf+EM/JfRzq2yWkD57jw/rL42Zck+T0MfA4yuiflvOMtvA9+U5jVaZmDyOUvqJtf3dGeCHocYvht0iWivwy1o/x4/zxVtc1QpY2xcWwG+g4riHeDSWwHnHE2ueINeOI5ZnHg45YRxyxTjhieer+cUeshXKshnXKEcvTJvY6Yh11xPL0X8cdsTx172mrnrofVP/laaue9nXYEcuzHD3ty7MOedrXMUesPY5Ynnkc1L6cZx49+xODWo6D2JeLz6ucsGIY1H6OZx9zoT/x7VGHPP2Ep1xe9hWfVzphxfCYI5an7j37APvgGfVnc3C4BsHrxUb72zQPXHOu7AqeizIMxF5bEzsjvBD0PJzhjwt+JldLxJXZP3r+pd/1Xz7dfttvZ5TeZOF3vMdMfb6u5vR6PC7ouWpvNB4eEwPOu66lONyfaDLE+dYLSL6axwc8t4z+EL8t6O8Auipl0RZ8Wo5YkzWxJsN8X2j1UO234DUeta4Wy/H68bl0aG9cN2uuhV5Wtm4avtccudq7kpojXy1kaVNcDLuBjuMa4t1QAusRR6x9jlgzjlgPO2IdcsTa44h10BHrsCOWp03sdcKKzyucsGI47ijXSiesGI45Yp1wxPKs2487Ynn6Qs/6eMQRy7McTzliedqEp+696nZwzqOnTRx1xBpUP+Ep11Ohz7TQpp093XvWx/2OWF55jM+rnLA85YrBqz/hncdT8JyF2fGhmkezMT5/N/bCfKyt9uxVGN8+ncerhoHYa2piZ4QXgh6rG35qf1lLxJWZR7v4Oz5xyW/+wcj9GaU3Wfgdz6OpOZXUPFrNeapL1Twaz5XhPNoaisN5NJNBzaPVnBO9tIz+EF/NH/M8Wi9z9y1HrMmaWDaPptrH8fxvnEfjvb/LRH5wHo33n+8cn6V5yfhcLLTJoj3ZMfBtzu1E3KTAjLzvGZ99j/7KvlF/CcTx/v2VIp39je/Q1jHNOMQj/e2gm1tIvnF4xnyifFxemC5ivnK8mG5Zgg7LJbX3m29nwvlR/o6vW7lMhPn2xd8h4RxuQ7zj+jIm8jsu0nHbgW1ZBX/TLtt2GH4rzM9znXne5cSvSC89trsTGaVHfqqOmK5Xizj2W8MFWJa2SfT7crtRfZWivfQor+r3RHt8KMcdKZC3E0qFq3v8LuEVaq2xQvoX99gPmuDvGh4DX3WY6iz2P/jqIfQlqb5IW6Tn9Qn8Xo7bi3Ehg2rP8HvMry2ZS4f9pqzg1/LB71JrXuaH4q/1yfPjsK+Z2f+y19y1d+bel83cs3dmf4Mk4JMy+PKUdSSRCiYlHxY/Qn/zadtt+ntS4HTjOV6AHULPq2rTZb0tr6rVvEwouaqG+WNvO1mPXyej9MgPMU0e0/V6EWdY6qoIxLK0fFXEW8jbrqc8IY/1Ql58h972+8mToLzcW1Z6bwvctkjPOmLbjqHH8mqUtUfDb4We7D9L2YfSi7IPS6vKlfVftlxTWCl/UEZ/is8ZLufpQS9ny9/6evw6Zcob5TFdbxBxhqWuaVFXxvAVKe8jv8PXTCGPDUJefId+5yepl4fyRrpOKBVGlK4rpH+muj6rQvrvsPR46VuVslYjPuwhvX98Fhf7G+rEihhuyH/5uqM3rp1N9/Pk83GUVsZP9HZKSPmTwgzfq9+gTkhJ9Rtq+oulZdpLlIdH6Kzb+M/6ncMFWDzja/S/TvWXfS7ySPVzYsD6+yGyoX6fTPPtxmdcpOP6VdP+FpWtX9wvr1mfk/1ypRdl77zbDeNY/2Xt9FsRq9/9szNgf6X9+9myvx77n0vLlDfKY7qeEnHcrheNC4uuUfwc+XdeSUIeane3uiw1+vfPJMaF3DZVHReqE+K69YM+P655lu0HGf2zoR/0TyX6Qak8pk64UmOilN2MCdmV7icpztMftUryKZOfFJ+zmZ9UXcAyuDEh1xRhreuC9VLCwvTrKG4sIXPVE4Axfeqk4ake+UyV5HOm8rOW4vArFfZdquzWJWTA9Hx5OF/2qX6ND79jPkrmbj5y1ZLZNJiuyEdem/82if488JFrc0ylZ85/qi9R80uh0n0Jvli8176EsotUX6LmXM/pvkS3uR7Wtboe2LDs+t2ycz1Gf25e1t5zPZtpledM1ZMJRz6ItZP4FNXHS6g+roe4MvXR6JdCfby8RH1UuhlL5AdPk+a4lF9O1ZWpBL2yddWOs60bRgxW7/Cq6X74FcNvBV0nOqFUOO1XOsSvqN6Iy5ivmNl32eXPuurry5SH9+xnnRruUmQK8jN9oL85XZStSTQTgkcMbD/riI7L3d4zfhmZutF2i1f1ZgPRVu2XYPqxAqyi03atfPjE+qvyeq5O21X1E21oRyKvE5RuokD2GD9S8L4TSoURk/f0qckl+BbpDE/RL9LZdT3ojMdcdXXGeRgJejyfmm/kL8TRN7L/q7czM/uLsv7P8FsiD3X8n9oZq3x/bztjs09llB75ISbrep2IY/81XIBlabn9fiX1q7gvjDzKjke+sWPxDO2esfLpbd4s+1S3/tK91F+agjjuL6EcvObxr2tm0+2i/lKqnnF7o35DKKc/bI94zKnGZWpsy3WmKTBj4JNojX5Pnvced5nLGz3wtAYuF/TfeyuMSVWZGv3noUwPJMqU+wFYpqlxXMo/tRP0yr+oNcXU2Ke3MWR5X274raD9UCeUY2h5V2NA5auq9mUN91OQIZS/W1+W06m+7NICHkV1j+1qit5368sqmYpoq/ZlcZ6T5wLQFlP2qdomPiG8Zj+ww3W/EfS8BOu+DTKW6Tfy/gDG53lrvN1D6WYnxCP990I/8/n5xg9VFssK5AuhXFmoLz36vT7IO3fHHPkglulW7SWJ/zqhVPi0WquskP4/qRtnKqQ/X91MUCH9L6p+fIX0P6/a9grpT6r9TxXS36HmYSqkP2+E6Cumf5qln66X/rOWfnO99Dss/ZZ66T9o6bfWS/8WS7+tXvovW/pz6qV/wtKfWy/9k5b+vHrpM0uPN95XaZss/fZ66Rsm74X4Ushk+OZXzwf6Kn4VebUIq6LsWUp2lI/9+IXAD/NYhHVhRawREVenTC4IxflC/PGELCxnDLuArpc8x7DXCSs+r3bCiuGYo1wTTlgxvMZRrrYj1lJHrGVOWDE85CjXckestY5YUwOKtdIRa4Mj1iZHrI4j1rQj1mYnrBhe7yjXFiesGB51lGurE1YMr3WUy6vtiM/bHLHOccQ61xGrMaBY1r+fENg8Z9UQfBoJPqn1lAbgqDkh+26H5yFi6IQyIeu6D+SfaQ48tXcVZea9q++EOfD/j+bAMb3N5yhdj+XP6otuPmkCv+jmeWy+Zdvk+lpCLsRjfTXEOy5nJU+T8vHaiVlZmvnzCPBE/p1QKmxX5WtY6kbzCmOV7SiThQa9Q3yvk4lVHVO6t7wvErK0KS6GB4GO4xri3VAC66gj1mOOWEccsfY6Ys04Yh10xPLU10lHrD2OWIccsTx1P6j2ddgRa58j1vEBxfK01QOOWJ6697Sv/Y5YxxyxPNs0zzrkqfsTTljxeZUTlnceH3fE2uWIdcoJy9J7yTWofRNPX+jZz/H0E57+a1D7hVaO42Gu7QZ47nGsNoT1AeXEd4jfCvPrkddYDWWoM1aLz7xnSfFRY8KM0neTayzMzmHk+7+umrn7wK7rdu8KFPhos6sKRLyQ6HYUiJYJ3Iz+8fsL6Z3KGmJHlT6+epZPfG/TEQ/RFERN05NbMA1LTfPwVEvVKbVxwYexcNuUOuDP8syf8XZCqXCtpR+tl/7ZattahfTX97g16WU9bk26psetSdeV+Xyg5sGnLy7rCg3f6/MBdQBt6tOxVUKWtohjG10l+KwSfNoi7ogj1klHrD2OWIccsQ46Yu11xJpxxDrsiLXPEev4gGJ52uoBRywv3at2bVBs1bM+nnDEGtT6+JgjlmcdGlTdP+KI5eknTjpiefpoT9176mtQ7cuzb+JZjp66fyr4icedsOLzmCPWckesiQHEiuF+R7najlieul8xoHKtdMKK4SFHLE+bWO2EFcMDjnJ5laO3XJ62Ooi+MIbdjlhethqDVzl6yzWI+vK21aWOWJ4+2tN/nXLE8ux/7XfE8pxT8OyTe44VPOceuX9vc9e4roXrN3wEiNFflHe+erx47AaeTzcMxK55SeQNGeGFoNcS+LgW5GdytURcmQs/L//HQ2953nPO/2pG6U0WfsdLoeoYkNSxRjWP3rA7HufoB49iiQFthC8DxeVfk0Fd+FnzqJjry+gP8duC/nagq1IWCmtHTSy7pFP1y8/WeusieMYj5GzttUn0T8vrvjoOTR2lDPdfzjtCDmWapHTqSokYeI0xhk7Q4WsUDM90vljwQp+ItM+GfF+9ca6svN5pz82C/CwjORmjSDe83o953/pH/9fi//FT/775c3/y5O6DX77gid++5s2/8p7nvPXjF333Yy/7qx/6x+s570MJ2VW+Vhbkq1GQrzK6mRDYbPOpSyktHzEom+cLcDEdtzOrSM5OKBUmyrYz3JbUbDOzVD9A6aXHdnRJWd9r8qhrCVC32EYMh7Qf52sJbszrYJvoYuDLQatcS3B9e67sqj9SppwRNzUH02O/aUm3T8Ne0Z7FRd2ar8e0KAcf9fZm+DTsthxTfYLF5cvtDrYnMXD7aenNHpiG2yKjvxN88s6puZhLRJ5TfmYV8GC+MdxSIMMM9YVrXswq92KtCTpPzTC/Tx7DC/NfTztuhZ7842l/pS4yV+MWpsf+yY1Aw+W3VtDvTNCrIzGxPnFfRR3JyVjIe0eC94YuvPnYWHXMOmMh7xsSvDd14c1XVOAVdJa2x+OZbuzxeKabejye6SV8mf3LcscQdXiYfKeNbYrq3IvyX9PXMMjEfnEY0jXEu1TbMQxyoFzvWTYr+4mKsl9XgPmR9izm68i/ZZSnTigVXm7ph+qlf635NN5zi7LxFuVOKBXWYJ4sqD6c4bdIlro+UW1Nx/zxvsNhIUtbxHEZVbU7jDvihKXKfhDkiuGoI9brHLE88zjjiHXYEeu4I9YBRyxPfZ1wxHq9I9ajjlj7HLE8dX/QEWuvI5ZnHh93xNrliGVrUGU+n8K2oUJbWvrzKR7PZPX4nW67h4gf54/b7kVCFvX5FM/TKj6qj5BR+m5yOX4+ZZCriW5HgWiZwM3oH79fTe9U1hAbP5/iIkA6M79hwu6EUmFDWfMz/FbQRd4JpUKWqpbqq0bL+2IhS5viYuCtPYsFn8WCj8I65oh11BHrYUesfY5YxwcU66Aj1hFHrAOOWDOOWI86YnnWIc9yPOmItccR64Qjlmfd9rQvT7k8y9FTLk8/4WkTnuV42BHL09+bXz1TU5pV+zSpPKolBceurom4nuh2JkRj3Iz+8fv19K6oq2uB1R6fefcEq5PVrYq619m6IcFrXKSzfFlXfDHJ3gmlwqmM8ExOfIf4rTA/z3W64soMlV7UIZeWti3i+OvxJYLPEsGnLeKOOGKddMTa44h1yBHroCPWXkesGUesRx2xjjlieep+UG31hCPWPkcsT/vylMuzHD3l8vSrnjbhWY6HHbE8dX98QLE8/cQBRywv3cfnUSesGDxtdVD7E55YC32AhT5AP/3qQh9goQ+w0AdY6AN0w/LU16Da6mOOWJ76GlQ/8YgjlmcdOumINaht7aD2TTzz6NmP9ixHT90/FfzE445YDzlhxedNjlhe8/fxueOEFcP9jli7nbDi83JHrBUDKldnQOVa7YQVg6dNeJbjmCPWhCNW2xHLS18xvNZRrmlHrEG11YX6eHbyOKj2tdAOLdi9kutBR7k8+5ie5bjUCSuGBxzl8my3Peu2l74GuT6ecsTyHIvud8TyXLfynJ/wnDfx3M9kcx180sv2fANjj3sC32h77lrwMgtzsUdrYmeEF/L0+A7xxwU/k6sl4sqcMHfgr1de/4c/e/sLM0pvsvC7IcCP/8YEvdq7aLpC31BBV4+rE+bw0vAY8Gv6UYrDfasmgzphbqymfGX0h/htQc8nzJUtC4W1oyaWnTCH/QKrO2dqj++Z4pPCUqfOGb3pY1jQI16T6J+Z+6T4961Tc/mpz+uCeDdE9DG8LP8dF3Hsq7BcK9h3s6yvYn9U0++e3hvdIn6cPyvXlG9U9YNP++qlrvUDq4/tzqKq7U4r9GQ7WUovmD8uyzEhS5viYmD9qzZpTPD5VsHC+p/6/qFMuSo+6A8XE5/FjnzQF7SIT8uRD2LtJD6jjnwQy053435EDJ1QKnxXj32kVerUNgsWh+Mxtik8LY7tAE9X5LLDk824r4onnaE9c2jQ36iHKMuOjbO4TGdhQvAp019N1cEhIb/lDWXG0xMfmNQ88SRBtC/svyL9E3Ay1+7J4jwW7aVtCtlj4JMIjX4/jZlwrqOCHcqTCA2rx372QNl4WTu2vEZ+J2raMfeNl4h8WNyEyIfy9TwWQf+8hOKw7Z+gOPSDtwEdYsagxvZ8SuJwIl8o31AJPqnPVYcEnz72n5eUaWMQ/0z3n3vsU45nYb4tqPEv16sxEcd+bDikx9Lsx34od0CefbLog98yOVf2fvRZsHx6nLsa79ZOvYPaqVGIU+2UycG3iZ+Eduqd1E5hei5frkvYFsZQNIcxDLjqlFSW7ydg3M2n/Ko8L07IjDYXwnyb57bV6P8Palv5hONOKBdU22pYXKeQrke+pU/JMvxWmF+/6/ivceJXVD/jOzuZNP9E/7rdd9175V179h14YGYIocP8HhNqBVHxXRbm5h7jGvSO6a6hv3eIdEFgx/gee2OVe0zcg8ceE/eA8Uz3VwMdB9UrsvzE2vbE6Cwu07GsWFarKQ57RWuAN5e54mN5GxL0SwhrXKSzcunGryHScas7ItJ17OH3b/3qn32g/cSRQ2/+4NFnnbf8rvc+8cdf+Nxvfuyn21/89Pse/uNnssxByFy0omDx6tdk53c8azPuiDUhsEw3uOupQn1YXtaTGX4r9FT/TnuyNvHj/HHelwpZ2iKO/dNSwWep4KOwFjlhxXDrAtYC1gLWAtZZwOKZCfS1Foft1A35r41aUuepqjPXFyXkw/RGV+ZA0ZrtTen7hAzf60DRCeJXpJce2+8lqfYUMU0e1Z7yLi4bVQ0XYFnaJtF/jWYaPOw66uwrNNOg+kFlyhlx22F+3q18zrTd4/gKZyQWL9M8i+4d4hkJo98LMxKjy+bKrGYkQoEO0IZC0HkaARlCqF5fYx7eu2GWD+bL8mC4LLOasbA7itTMUoPi0BZ4FrSojFZSGTUgTpUR3w1l9LdBGa3Jn9XdUGXuMFT82IaGC+gbJJ/Rb8hlwt0aSr7RAn5qFi2Gewr4TQO/O3J+yu7QjxoO5qUTSoXlyu6wPrPdqRn21OGK3eyUbRHtlHfoDAks1CnPFFr64aDrveE1iX67KPMydh4Dl6vRX1KyXJ38iSxX1BWXq9r9hPRlVlrUTi21qtQkrKbAQp1yuXary4bHdevZiXLFdrch5OJyNfrnlixXe+5HuaKuuFxVe430ZXbUIabJrVYSRygOfSLzUf4b9V2mzNV901zm14oy574/+4Vu7UsIc2ecbad8PuP8sv27987kU86BQmqKOD4vKRBjmUgfEliYJuU+cRK96J6F4aCnK9l9Gv0NQuUp9xuDMmXLjw0ValaZ0osWht8KunvQCaVCVtat8VRfqpqluuRnwVRjuKZAjEykD12w7G+8bqPMTdYp76ZUZb2LopYDb7pD+jsTLUfZtXWjVyNk7PUYvcr/BMVhutECPtiiob64RTP6XSVbNOPdjxYNdcQtWtkZdKNXI24c1fMNeEspHxinZpLKVkNzr+zqMK0aWan8NnrIL9sX6ncpxRXNpIQw1xaMrh+jYMwP24K6KV7Nphi9ulkc19K514pNKNsJlj+vxHTrdaVsAUeOPBOi9tWkRkBqzyHaMI/Kjf6U8AGGuaRL3sr4O+zmmDxqvxv7O/XNqrJHo+vRHpecbd/E/gftjPftqb15PPJDfePeH6VflrXq93mYHveiouw/DHb2axvm8uu2X7bIdt9+Bm3X5EnZ7sJ+7tmAeii7n5vtwXCLfJ+yebSlB2hWvQ83AW/NCM9kxneIP8g3AcfwENBxXEO8G0pgHXPE8rxx92FHLM9bTD1vtvXE8rwR9Ygj1qDe3ut5S+4eRyzP+uh5Q7GnfXnq65Ajlqd9DepN5p42Mai3Q3vWbc/66FmHTjpiedbHp4J9HXbE8uwD8BV/2F/mK/6q7hzB9GVWtVK3Was89vmKPxNxC9HtTIjGuBn94/db6F1D0GKwYsJhBqtKrVoo1aphftHCLg7hcaj30vy3jzdrvyUjvBD0UMzwB/lm7SzM/xRpUG5HPemI5XmT7yFHLM+bj/c6Ys04Yi3cOn32bPWpcOu0p8856oj1VNC9503Rnnn0vHXaE8uzbh9wxPLSfXwedcKKwdNWB7UP4Ik1qO22p+49+wCePtqzPzGotrrQbp+9Nm2hT14N66Qj1kKfvBrWQr/w7NnXIPYLY/DU16Da6mOOWJ768vQ5nrp/xBHLsw6ddMQaVB89qG2aZx49+76e5eip+6eCn3jcEeshR6z7nbDi8yYnrBh2O8rluT7kqa+ljlgrHLFWO2JNO2HF4GkTyx2xvHQfg1fd9qyPnnUoPnecsGLwqo8xfLvbV3wec8SacMRqO2J51sfXOso17Yjl5aNjGFS7H9Q8fru3td5yLfRNvvXbjhgedJTLsz/hqS+vPnkMDzjK5dnWetZHzzHMoLYdpxyxPOcU9jtiea5bec4zec5/ee4vLNoyjvt9cY8wH39v9N+VV8YerzR4oo/Xoj2REV7I0+M7xB8X/Hq9jvNDV7fGn7P1+b+ZUXqThd8NAX78pz6VTR3CWfPT5B8c8Os4f7CM/hC/Leg9r+N8aU2sMtdx9ntPv9Vl+2T8eXldjnLYp/tnWhb7DP3qAZAlZxteOACy2Cf/LxGyGL9uR5SYrSrZUwfGcr6qfvYzJPj08fuQ0bL+/lvh+5AY+MDhXtr9BawFrCIsPkLC8NWv8eF3zEcdR9Ht+qo9K2bTYLqig3dflf/yQZHPWzmbbl+OqY5gQxmVH8iC/saN6/0w4CINX19l9IfAl/P1VcOUZ8wny4jl2RT5ioH770Z/jPrvNa/Bk9dX8fEzaHPs62vyLX0S5Nm6fq/a9VVsiagVRMV3WZibe4xr0Dumu5r+rnN9Vc2e/Cazik0i0uI6gM2HIE1D3GKK2wxYrwY6DpxPzE/ErHJ9FZZVh+JwZDINvLnMW4KP5W1I0I8SlhpNWLl049cIxb0Sw1DpYnijSOPZmvTjOqs+XKY3WdYbna3L9NR1apa2LeL46++qB8Yh1pQj1npHrI2OWJNOWDHcuoC1gPUUxlIjiNSs3ivzXzW70SD5qs7MYHqjK3PYYE2/Pla2HTF8r8MG1Sxz6rBBdV1mm+JiYPtQ7dW44LOAtYB1trBS/cQy9VPxQX9g9epM+yscQ+Ksy1+u0DyLrsXhWRejvwxmXT6zYq7MKBfOjCod8KqTylOPh0GPxbFOlauSlF0h/Z35L9sV5l3ZQtlr1J6kMmpAnCqjO/Nfvs9jCsroizQzhrP1fJIAjpdT/NiGhgU94rEN/QvMjKWu6Bou4Fc0U3htAb+vAr8zcEXXpLI7rM+9Ho6WWi3uZot85Q/qmMeDQ4IP6rvMlT9KvzyTO5LbK9oD9wHZNorkU3pzvvKnVSDGUpE+JLAwTSpLOPFY5sofnOJhlZ82DaHyVJHFsHDlz7fclT9XF4iRifShC5b93e3KH25VUipWqjJvVdSq8Nq50W8SJl3GY4Yw37OkZtxQntSVR+qKgeECPkWX2HGLZvTnQF5TLZrx7keLhjriFk3NEKgeutF3u7aBqxpfsoxxqOMql5DGUPbKH+6pKXtpJPKb0o+yLyy3JRSnRunKFuxdP3rVmB+2hVTZxsC6aQt6LG8eDeG3OWwnWPf4pr6yl1gqW8Ce6F8WrGcjLtoCry8vBizVm+NrU4z+KuEDDLPVJW+sc7WvDbs5vH8Iuxh8HRDKjqtFhs2YPdrjqLJHzD/bYyqvMZTpbfNe1RiUzS2mOLU6V9ZuUtel4B4K21+h6qa14dZdm6R8dEKpsD4jPJMZ3yF+K8yvg3W6a+r6MOVLLO/LhCxtiouBv2tV144tE3wU1jFHrKOOWA87Yu1zxDo+oFgHHbGOOGIdcMSaccR61BHLsw55luNJR6w9jlgnHLE867anfXnWIU+/+lTQ/WFHLE8fzddZYH+Gr7NQfYfJBB9MP1kCKzWmUXns83UWJuI6otuZEI1xM/rH79fRu4agxaBurSwzdZDaXKA+STpTt2P2sYt9MiM8kxPfIf4gd7GzMH+4MyhNwUlHLM8m/ZAjlmcXaK8j1kL389vDVhe6n9WwFrqf1bA8u59PhakLz7rtOd3gpfv4POqEFYOnrQ5qH8ATa6HdXmi3v1XajoV2e6HdXmi3vz11P6i2+pgjlqe+PH2Op+4fccTyrEMnHbEG1UcPan/CM4+efV/PcvTU/VPBTzzuiOW15SM+b3LE8ponj88dJ6wY7nfE2u2EFZ+XO2KtcMRa7Yg17YQVw1NB92OOWBOOWG1HLC99xfBaR7mmHbG86lAMg2r3g5rHb3df6C3XQtvxrd92xPCgo1yefTlPfS11worhAUe5PNtaz/ropa9BbjtOOWJ5jvn2O2J5rul4zgN4zk/sdcSyOQU+pvgD+d7FHo93fH3q4LceD9l5fUZ4IU+P7xB/XPAzudRBbmWOhX/7Lz791lNDt/1TRulNFn43BPjoD5Fe7cUzXeH4ooKuHlOfZxlvdSw8f2aIezBNBnUs/ERN+croD/Hbgp6PhS9bFgrrxppYdiy8unpgIsyvS2wP6rO+VkLmIcGHj4X/YF6X1fHnZ0oW20f8KwMgix0L/2tnUZY+XpdR+vAx9n01ffzpfcVlP7tM+WFVF/lwqF7q9QLWAtaZwPI88LYditsU/lQ4Bjxw6q9XzabBdEUHLN2Z/zaJ/sia2XR/m2OWORqEfUoW5h6lwO2spcej2JGGj2I3+r8HX85HsY9SnjGfLCOWp7omJwY+it3ov0B95pqHEMuj2PnIEfV5esoPp67DUeXXYx4qHw7OB6hNQxwfSL0Z4vjg8C0Ql1HcVohbT3HbIE7VRQsN+ht1FGX5vXWzuEwXiCeWYYfisG2cprg+XLmyvYxPQvxBv3KF56wG5Wq6445YDztiHXXEOumI5XmV37EBlWuvI5bn9Y6PO2LtcsQa1OswjzhiedbHE45Ynnbv6QsH9VpTT5/jaROHHbE8db9nQOV61BHL0yY8+yYnHbE8y3FQ/ZenfXnWx0H10Z5YnvZ1wBHLdG/jdHXZU0ZxyGc4wQfTDxeki884H8XjJqOJoccxfukTffmypMX1+CUvS1LlU/WyJD66tezYtKpcjkfAmIgXEt2OAtEygZvRP35/Ib1rCFrEVqdE8hRV1RtoMX3qptvRHvmMCj59nHYZL1uFzta0S4+3wo+Vcakoj7qXhqulVdmiA9F5itjoj+V7adphfnWte/9I1Nmh1XPpiu7n63Y3xGOr58qwGOIalBbdPJ8ae2r1bLrXw7Od6B1tXC1zch2tuszZEPlWfEZ75KOWQRhL6SyG+/JfXt74gVw3UYdFJ+0OFWDyEoY6dkpNvxt9t5OxWZdYNyZK8EZdcrvQrijrUkGPW1L4eC6Ub2lFWW84w7K2hKzjgjf7fsxXP7pPht8Seajj+1N6+YZg+W+1m2/57G3UCqLiuyzMzT3GNegd072A/q5z8+0yet8JpULlxS0+TG4a4toUtxmwqt58a/mJXqzKzbdYVh2Kw8XIaeDNZb5U8LG8DQn6ScJaKtJZuXTjl6rdhqHSxfAmkSZ16F+ZWhsDD0ImHbGWCSyzadx8XMGmV5b1RobfCj3VodPeaDnx4/xx3lcIWdoijn3MCsFnheCjsKYcsdY7Ym10xBp3worh1gWsBawFrAWsklhqMm4ZxWH7yTcFq1saM4pD+VI3iWL68QSfRT3yWST4qHuXsoJf48PvmI+S2fLDbTfmp+pHJZh+GeUHZ3925r9Rli+s1jxx9I5p78x/m0T/Wtic+KXVxXlEPVu+WOYe76oZj/LyXTXYx2G7UfUH6e/Kf1WbzRugsKwNo1sZ/BuVgbqvbLGQh+8r2wllkOXP6i4hPme926T5XURv5VR29u80fS5TpOUbSTH9kgJ+qA+U+d4CfqPAL3V/m/Hu0e5WKrvD+sp2V7bfXcZOUSfKTnmWSs0Go055lsrSDwt6xGsS/UpR5mXtnMvV6NeULFcnfyLLNXUvn5pNVO1Qyg6wvEwn7TC/zItmXxELdVqmXBcLfC7XLYlyVbPmKBeXq9GfU7Jcne7Yk+WKuipTrmpxMdV+Y7maTtRHx3xLsPLRqVllVa5oK+yjjf6yRLmqmf2UHzb6pw+AH07dVafKNXVXXbdyZT+M5co3Q6tVhro+Wq3KpXy00T9PlDn3+dkvFMmn9OZ8M/TSAjFWiPQhgYVpUlnCiXlWuWV3OOgpUFa50V8jVK6qKcqzsI+k/D6Sqs1iH0w1hhcUiJGJ9KELVkZxylRxhSd1syq20I/RaA1NiEcKyvOpnr/RW/Uq6l0YXpPob0m0Qt1Ga+ytVwp6rPYmj8r/SorDdEsK+GDriPri1tHo7yzZOhrvfrSOqCNuHfEGrYagZ32vFvR4yxfPKuHxKqkqvZL4dHMdbP/KTtXoW/XGG4n8dhuVsX2p43MmRLrUTInR9WOmBPPDtpCqSzGwblK2g7pph+52gvWyzLFDZW0BZxd4Nkw1G2gLRUdUqJEP5p0/Wz0ufIBhqj0a6Od73cuijvZI7RlS9mh03+q3nlue2kSPelJ7oLgt6GY3qVumcZTFn46vFbiqzTf6KcBqEEZ8tqOGmkT/loQ9rhMypGY31gv6dUBj8kyQDJh2QqQzX6Hs0eh6tMcJZY+YH7bHDRDXEPSsm42CfgPQ8Aw/rjZPURz6Tv60GvmuBdlf0Z5LhzszsoJfk5XfsayIxUcyLHPkg1i3EB+s7zjj/u41s7isEzWMM73zsT6/BjPuP0Uz7pie+7kW9z6oZz+/sTi96XKC/lb+HPsXfESvyifSrynI5/tBzg9DfQhB7+zpsd61Vb1D38f1bgriGoKe652qp+h3uO+BdbJNWKpNQZtkn2w6Gg66DAyvSfS/kpilwXZ6Lck+VlH2smNISxvL4p/zBnAizG9j1hFP1YapsmqH4raCsdS+YPaXWI6NoNtDpjebaIa0f+b282NQVh/cqDFDgQztApmHC+inSAaj/53EGFr5AdXush/4fcC047rKYk4WYP5hoq+h6in2P7hebxL0WF4mj7LTTRSHsnO7uAH4M+0E8cc4tHPmGxLycpvaTV5ubyzu76G9+ov8eYTwKvrqRqqszhfyli2rdiJ/jGXpmmG+PabqCOrjb9dozEUVMT8n2nTVV7kN8P++oD8SA/dHYmC/jD4D6+G7qU+C8i8l+c1u/6nkfJRh9dbWZ3+h2noc15Vp65GefYIar6AtpdobHg9i/eMVdTUWLduWTkBe9y7pnl/EvTvo/Bb5YS730/nNC1T5YTWGS+k8NQ5Sfhh1voHilP9U9mh0/bBHzzFfN7/H9oi+bh3FYX3mXc3d7CZljzhvcC/17ZAP14Fu5V6ki+ECevbrRr8SbJX7Nh0hQ+r432lB3xEyT4T55TFNcZhuXQEfrJeor2vD3Lwa/XpRL5X9d/LnHsdek8r+UUds/5shriHoWd9bBP1moDGdtIkeda989TTFoW1y3VD+rGzdsLRRD5eQry7bBmQCS81Hsq82+u0JX63qYMr+u/kjnhNGXXIfFNNZ2ShbNbp+2Crmh221A3ENQV/XN7SJHvWkbNV4dusLrCrRF0iVbdm+j5Ufrveuozg1lkvJNSXkUrtKphJ8JnrkMyH4jIt0WcGv8eF3zEfJrPo2nB9VPutK5mcd5WedY36UzN3mVF+8djZNkW/DtNzeGf1r1s6me2n+rOZE2W7K2i5vDVkHOlA++wbIfwj96HOGRWe7z8n9SuzjlJkzRNvDttNoAsnYD31hfWZ9pfxgDGXGL1gnTAdqfniS4tDepoiP1/zr58e7yz+ZyG/VuZiyfQD0uYYdwrdXH4BtYRriuA+QmsNSfVLlL7mM0b9iufCaldEfSvQdlR2k7KYj6DFfvH6LttGhOJQ91Xd08iEDbTc8BlJ9x7J2k5orxDba2u9UP9eeVVkjfaMAZxPhsN2NwntMx/1NiwtAr+yOy2K4gN7weOz97xPzDNNdZNhAMmzuIsM0yWD0TwgZUvqPYVy8y/LfEcKvWG+aGeGZPPgO8VtB20cnlAoZ68/4KTuIwfK+RciSmlPIKA75bBF8FNaYIxb2LXsory2sDwwWtxWwOxS3DehvpLhzIO4WwODQoL8xP9Guf2njLC7TsaxYXlsBn21sWqSdFthnqz5M1+OXrA/sk2KoWh868LxQH+Zf/TBo9aEDcSa30lEIpXVUqr5g2VTQ/3TZ+mL4XvVF2Z6qL5a/rfX4deKc7WiY76tw7gZ1h3w2kwy9lh/vLUDsM11+NfcXJMtP9b89y68DGFXKT60H8TxKJ8zPT0fkR+1FNrpUP69MOSk+HSGzmmPEub8/pLm/zRCn5oh47s/oPwNzf39Cc384BuqEuXFoW3gtF+fZ6HocOzbU2LEDBDx2nMbEobisWX9Ij/6Pywz9BM/l4fxTh/ioebGy80+4z+D941r+DHA3irRct5F+s5DD6K3O4RVlSGNpm0T/ORhL8RVlymZRLp5PMfp/SMynGN8QQqm10W2CHv2LyTMR5ut5G8UV9ekNO4T5fQbLn8VVaRdUncD8cJ3AvlJD0LNuzhX05wAN2/25ELeZsLh+xXCtwErJuqkHWbkcsazOJSyjRbvE/LBdGv3XSu4bMJ33o/yxzS5T/mosUFanPKZBPW6luA7EbSE+yvcWrW+wraAP+UNqv1KndqhvDtU3rcqnG52V/+n1h7zM1V7dSZBT+f1rCzCXASb7OpWH1CkK3b6bTK1Nr0ikw/nqEcGrYw9fSwfDs2/2Fgtehsvf9E6Bnq7eqGXJWJ4uQZ1klVE+8dvKKn3ejPBC0H16w2+F+bqo06dX35Mqu7f8rarHbxP26dGOsE+PukM+Vl7q2yXsA2+l+qDqWOo7D6O/YGo23bkFmCFU76+hPF8anYvr/U295VPV3TLf1E+E+WXCZwusgvw0BD3vnTL6y6Fupr5l8vnePvuCahfxu2huF1Pfz8fAZbFG0OM39aaTNtFzuRTZF5Y198PV+Q4rBT6f7/BcKAP+lgm/pV1Fso9XlF19h8X1mOsG12N1FXXq5KUlgNUQGHfnv3wKzwsSbWu3fYVsE92+czZ5JsJ8nfNavzrZSNUXo+vHuizmh+tL2bP0U3aivqdUe9WWUBzaI8+VYB8NzwX4WO57+SyY+Bt11gnpsO6XZn73ez75uU/yFdUB8jraA/73Xt6c/IFbrt/RL/zfXfzfv/Sxj+76wX7h//XIDVcP/Z/fv6lf+D/8pRc/4/Vrtny+G3604zfDDQBoP5jO+jZ8DkEnlAqjKL8F1Xcz/FaYX+fr9N3Knr2g9h1YWp7bjOFWoCvyZap+L2AtYFXBwm8FY/g+6Hcfo9NpsR7xWR+ZkCVLyMLpY7A6gnfC8VkGi0QeLG44Ebc4ETeSiGsl4tTZJxaHfZ2dFDcuMGO+3ppPovA4NoZOKBX+0eTBcYH5tkC4pnvV11bjKTUeWU1Ya7pg3UBYmH4NYXU75+VGwsL0/I18t+/AXkpY6htXw+q2XsCnwmN6S8vjsek8IpbXD4OwmIbLMoY3EJ7RviPHMFvCvWAV2rnA7Tti8bk9TIe/Icxvj2Ngv4BYryQ+am9/j/kbKyMn4rdIlrr9htR5QDFwv2GDkIX3XcfAbYTaA71B8FnAWsA6W1jqW49e/UjRPmr0uTHg3OUv03yD+oYc096Z/7LvHQVf/mHqQ6Hf4H3hKDP3j5S/WJ/I/xLBp9967setZW2BtRPo4z91fhj60jvzX7X/fiOlK9q73Ah6Db/bNyMbCaObDf7elM6bskHk1ST6z0M//r+RDaoz0pR98jx00U12RfaJZXYn0avzfJTN8ncbfyrmTDNKr74FiYHX84z+zxNzjsq/peYcu51lx/rGPPO5S0MCC/PDc65Kp+rcAdbpZxLz0A2Rfhx4WtxKisN5nNUUh3MgaygO5yDXUpz6XlbNY6+iOFyf47ZArbtE+3nTutn33ephDHfmv1wP/ylhW8p3pM516gj6TSLfE2G+PXUoLvV9UgfiuB2azv9GPXRArlflv/wNyVdKrjc57U0bPdvnN3TyZ7WHm+u58hkdeMf1XJ0X0hH4fF7Ioty4VD1HPzFNsi+pKPsqITu3e1ynfi/RT+K2ZkOCJ6dFPsOhWhvaFvrKiEfZc0yMfhlg3lHQ1mO+Um2N8h8bRb6UTlPfq2J/0bAZsx9nHGP+uX6m8hpDXV+p9kLxHjr1PSnbAfIpa/9oQ788NZeuX33nVxbIgxgjQdfBTigVSs+pGH4rzNdNnTmVbmXB/Rc1RuQyj4HHvFXHYgtYC1hnGqvf56FwHxvnbXE8+3zqR6v9Spj2zvyX58d/AeZUrs6f1Xi2zHkwPc4Zl15rXpgzXsBawDp787z98H0xlJl/VHMDgzT/WOSv7y8x76HGAzx2egf46wfJX2N6nntQvjw1N1nWN95J9GquTM3N81zZ/opjwtT8o9EfTIwJ+z3/iHk+W/OPxxPzEktE+kGff2xQHM4/cr8J5x/Rfmz+Ue2JuY0weKyMccMQx2fY4f1PvG9zBOKWUhzuGZykONwTw7ev4zkIfCs47iFdAXp4K+kBy7xJGDgXsTiR11GKwzq0iOJQtyMUhzoaozj0ccMUh2XSojh1O619s9HNH8dwZ/7L/vidCR+j2pDUXvuOoOfv2mPwnIcuc45wB+Qqmod+N+hhYR56LtaZmof+uZrz0Osqyt4Qsqv6iXXq/sTYskyfA3FXEb1qH1VfiNvHX0r0OdR4OtXnMPoPncU+h1oDOEvn38l5aMw/189UXmOoOkdveWqH+f6Q56jV/QBsB8inrP2jDdl8Td3vAv6XX79ox+df+g8b63wXgPtwLZ3N1aA8Fcr3V1F+C2quxvBbJEtFfqfnatTdh5g//qZztB6/D2eUHvkhZov4jdXj1+D1CS6b+M/6mcMFslhavnPlM9TXGxdp+JujGHiuAuMa4t3QWcJSd5iiHvH7qD+lveCs404oFS7nfrlhIHZNW7i5bN0y/FboydZP1y31LSLmj8eJ40IWVV73A12vZX9iQLH2OWIddsR61BHLU18HHbGOOGIdcMSaccTyzOPRAZXrYUcsz/roWY57HbE869BxRyzPcvS01ZOOWJ72dcwR6/WOWJ52P6g+xzOPjzti7XLEOuWI5akvz76Jp30Nar/Q0+4HtS+3xxHrkCPWU6EvN6h279k3WWjTqmENal9uUH2hZ1/O0xd6lqOnvga1//UaR6xB7X/td8TyrNuedchTX57tkGcdGlTde/ovz3m5QZ0b8rQvz77voPYxB7HtiM8tJ6wYrO2YKMDGZ7U22krwyYTMDcEH9yiM5+9wrchwRsJ8XVRYhyp915Hht0iWivyyVPmoe48t70uELGpfJZdVap0S+SispiMW771oCiy17pdReqRX+hoLs/sfD+y/74H79h++aubuA7uu270rUGjS31cViHgT0d1YIFpD4Gb0j9/fRO8aghaxJ8L8ohkukDsAHr7jYsL0zQSfrEc+meAzLtJx1UbTqVDVzi9btQ2/FebnuU7VVqaq9GJ5bwlZ2hQXw26gq+N6Me4RR6yDjljHHbFmHLEedsQ66oh1xBHrhCPWMUesPY5YnuXoqS9PW93riOVpq/scsQbVT3jWR0/dD6qtPuaI5WkTnrbqqa9HHbE8fbRnH+CkI5Zn2+FZhwbVvp4K/qsf7ZD15fFoavwUd5iuq1oEcQ1KmwHPJtEf3DCbrkWfOmTA255HCC8LlcY02zPCC0GPoQy/RbJU5Hd6DDVE/Dh/PIZqCFnaFBfDg0DHcQ3xLoV11BHrMUesI45Yex2xZhyxTjpi7XHEOuSIddARa1DL0dNWPeujp1wPO2Ltc8Q67ojlaRP7HbE8beKYI5anvjz9l6dcJxyxPMvRU65BbTs8y9FT95512zOPjzti7XLEOuWI9VRotz3rdj/aWltXw/HYCPFRY5+hBB9Mz+MiTJflvyMknz13QqkwlBGeyYnvEL8V5ue5Ar8spX+lF15TxLRtiouBP+1VfDLBJxNYKbkcl6ZNxAuJbkeBaJnAzegfv7+Q3ilVILa6WWxE8LKQUm27IH0M4wk+yuxtGmY06OrHy+dVqx+mtzjFJ+uRTyb4sF7VdFIM9+W/fEPcY/kUEp4c0hD8EKuMa6m5ZF96Nw4v2ffqWtSSfcq1DAtZ2B5iuAPoOK4h3qVsq+GI5dQULDJ9LBKRSlesR7SrGykOT9i4BTA4NOhvzE/E/6WNs7hMx7KijZncqi7ztpiqdRnTDxVgqZsTY7gN4pHeTr7psUwvUGXK9jJcE7ts/U6dssZ1n7cvdUI6/G9Xvr313NvuurhqPTL6xYJebe8xXdU8fea8ceARiLfFqW1gFqdOu4vpLyD5FteUr4z+EF/5R+56lS2LyaDbmRjwxBrEMroAMjUhTvFpEv1/huWXn6MT57gNsXcfStBlBb9KZpTH3rUEfUPQG+9RQW9xuJsS9Yo0qC/EakE80v9Knne+SR3TtwV/rDOhQO6i3aKM1RDvjD7m8xc2zM1Dzb5L1ssN3O9/xvZnL3nFOY/164bvJb/xiy/59L/sOafOSV5qa2ZZey1q92K4Pf/tsU0ZUn4slE+flWnvavrwr5Vt7wy/FbRf64RS4XR/doT4cf64jWrV4/dv8TRZO9G0aEyFukM+3JY1RBrVzhlGTD+9aW4+ao4D/q1HG/xXXoaOAZf/P0HL/4shjqeSuA+I9J+C9ufPwLcarqU3feGYd7GIt79N30OCFp9Vf0HpDemtvIpOyhymvBr9Z2BsunNKY5bdPmH0nxXjXcNUp+6pOmP0qZPLUB71Fc0YpUPZsU3nd6p8MqJFGWK4XchU9HdL4BTJMCJw1PimRbKq/jPWm9TpllhvPgFlaW3WiODfz/FsRnGYt5uAjoMas2Jf86PUZwwCS+mHx00ebbe9XwTvmW+DaIeJlr/+QRl76Q9z/2KRkMH+XpyQPyOc1OnjXN/Ub1l5MyGvakt65YNYN+e/PbZ561JzrbEc2htncYvaPNVn4DZvxcbZdMvy525tnsVxvy2GV8A79uncD0KMGHh+3XzkMOAjzQjlyejX5vnAtk35EMOKeV9H+hyBuFQ70iT67wR9biR9or74UzD24wH+HgVZkDaG2wt0cA7IsWVjMS8cpxblMWKct1HToQxIxxh12zXVv+K6W6Z/xXUV0yke7I+L2m6zjbEu8eqE4SDeDQn6kYL8BsG71QV3scBR/r1FcZmIY9+D+UW/xX0O9Avot9qJ+pKFufkapXyNJPKViXRcz1H2xQnZlf7Qf9SdQ3jjX37tT77/6Np/7NccxXPfefB7x5/xMz/bL/z3jf3+83/5nSOvrDIHYuWsPpFl21JzsTHcAvFI/+K8PHqcYwicH+U3UuMzngtl+W8skH8X+O8bqV6o8YmqM0Xt76KSshj9zdCe3gHtaQh6/NDjTQNNddMA+jXu7yp/qz4xMPpuY0vTSTvM96/MW61tok65T2M6Gg56fG94bA93QxnwTSDKN1uc2gqj2kJeZ1XrY5HmONWrmv3bxaofYYHXKDGP6rNuXvfkU9MxDsuS5/sxqDGk5TXKfKLEuqfyD1xf1bxKqr+o6p3hD1q9M9tvh/nlwvZW1oaL+nOKH+oB22qz4aI5eazTOOZ6HY0RhiFOzWmxPzX6t4FvP0W+HXXM9qD8BMsSQrn9CmosPy7SWbn0uJ65CMsX5cR3iK/Wn+vM1au+aWquvmY/ocltLPJT5bA0aJ2q+XweK6r5ntQ4KeVPVP3juqnmEVQbkhrPGW+cMy/Tb1J1C9NyO/m/Qt16f6LfVNQ3CkGPA5g+5ftQVqX7UYpTY397HkvwUXKlTj5ScqFPxrTMu1seyrZVTn3ERaqtwjLhOqL0kjoRSZ3GhKdgcR1Rt9NUbdtGKU618d3atvcXtFGYD/R/PL5VdQzbvrrjw+/a9gNr1v3Ww+P9Gn8uaq57W+dn7ryuyvhT+ZUhwkU98Hx7DC/Lf8usc9dsO0vv2+S2s9d17rJtp+qvc1uA8yy8L0nNwagbwM4UlhqbcFnW7CeU7gfxnoWatpPcs6DaNzW+4nEjtj+s/14+9x9ELKz/qf5xmXJVfFSfvt9rd0U3/nrwUUc0qD3HvfJR+5fVuiyO3z5DbaOaD8O0RfNhSzbNpvvsxrk0JvvnoB/6ZZozwTxXqMstNSa3oOY+2G5VP9DisG/D9oF9G/4WZAJkwL0QHNR8itFFfk/bNIvLdBZQl2W+h+F9phnh8dyx0X+FyovX4juhXFBzx4b17WQLdcr7/hLlrco49d0Aj21SY1M1J6d8ZZF/Q3zlk24jfNRHao1M5dnS4tp7ynex7SP9UvBdGzfNlVGNaZUPtvfd5tFTa9yWtsdbXcfYnjEoe+Z6oE7RZd+m6kEb4tgnLoU4Hs9gUHXE9FDFJ3I5qr4Otms85lPr7theWv7q7iHOANNksryjXPyNBdanJr2ruaf2tO7U3hLsb/Hcm9FfvmkujtoDo8YbRq/2zjcEX/WdxVhFrBHCWtwDFs5bMP3imnIprGHCUt9gqH57LLttedmcyXXm76Q90jXHhWdtnflGaA+eu2kuvzO9zvz8nP/COvPZW2e+HsrgbK4z30f16qm6zlyln7ywzjy/XM7mOvN9Be1Rt3XmB6k/V3ed+XHw7XvIty+sM38zLKwzL6wzh1B9nflNULd+NNFvWlhnnu+TF9aZZ+m/VdeZf7SgjcJ81FlntrbvfwL6JERJ2tIEAA==",
|
|
3979
|
-
"debug_symbols": "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DXQwQGwFW8FWsBVsBVvBVrAVbAVbwSbYBJtgyxE7nrHW7KKb2EADHQywL8yz/3jqWbOLbqKA9Tp+a7bOTTTQwQD7whzdFxZQQAWxVWwVW8VWsVVsDVvD1rA1bA1bw9awNWwNW8Nm2AybYTNshs2wGTbDZtgMm2NzbI7NsTk2x+bYHJtjc2yBLbAFtsAW2AJbYAtsgS2wdWwdW8fWsXVsGSDj2XjN1rmJDg5bnP9tn5itcxOHbTxrrtk6N3HYxsPomq1zExuYNkt0MMC+MAPkwgIKqGAFG4itYCvYCjbBJtgEm2ATbIJNsAk2wSbYFJtiU2yKTbEpNsWm2BSbYqvYKraKrWKr2Cq2iq1iq9gqtoatYWvYGraGrWFr2Bq2hq1hM2yGzbAZNsNm2AybYTNshs2xOTbH5tgcm2NzbI7NsTm2wBbYAltgC2yBLbAFtsAW2Dq2jq1j69g6to6tY+vYOra+bHIcYAEFVLCCDTTQwQCxkSVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClghZImSJkCVClihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKlihZomSJkiVKluiZJZ7oYIBpe8xS1XpmyYkFHLbRflrPXssLK9jAYRudqPXstRwNofXstRytn/XstTwxs+TCAgqoYAUbaKCD2DJLxmt76tlreWEBBVSwgg000MEAsSk2xZZZMl5qVM8WzQsr2EADHQywL8wsubCA2Cq2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"
|
|
3979
|
+
"debug_symbols": "tb3dru24cXZ9L33sA7GKrCr6VoIgcBwnMGDYgeN8wIcg9/5OlkSOuXdncWnNufrEe7i7dw398ZFE1ZT+55d/+9O//vd//Muf//rvf/uvX37/T//zy7/+/c9/+cuf/+Nf/vK3P/7hH3/+218f//R/fjnG/xRpv/xef/f40375fRt/+vVnXH/28089rj/L9adcf+r1Z73+bNefVz296ulVT6969apXr3r1qlevevWqV6969apXr3r1qleveu2q16567arXrnrtqteueu2q16567arXrnp21bOrnl317KpnVz276tlVz656dtWzq55f9fyq51c9v+r5Vc+ven7V86ueX/X8qhdXvbjqxVUvrnpx1YurXlz14lHPx59x/dnPP/tx/fmoV44BMkEnPEqWcaz0R82S/7FN8AkxoZ8gxzFhVI4BMkEn1Altgk3wCTGhX1COCbNymZXLqNwH1AltwqjcBviEmPCoLAPkmFAmyASdUCe0CTbBJ8SEWVlnZZ2Vx0CSsX3GSDqhTmgTbIJPiAn9gjGgTigTZuU6K9dZuc7KdVaus3Kdleus3GblNiu3WbnNym1WbrNym5XbrDyGmIxdMMZYwhhkJ5QJMkEn1Altgk3wCbOyzco+K/us7LOyz8o+K/us7LOyz8o+K/usHLNyzMoxK8esHLNyzMoxK8esHLNyzMp9Vu6zcp+V+6zcZ+U+K/dZuc/KfVbuV2U9jgllgkzQCXVCm2ATfEJMmJXLrFxm5TIrl1m5zMplVi6z8hiDKgNiQr9gjMETygSZoBPqhDbBJszKMivLrDzGoLYBZYJMuEa3ap3QJtgEnxATrtGt9ZhQJsiEWbnOynVWHmNQbYBPiAn9gjEGTygTZIJOqBPahFm5zcptVh5jUMcuGGPwhDLhykMdo6k+kl/H2Klj042xc0Kd0CbYBJ8QE/oFY+ycUCbMyjErx6wcs3LMyjErx6wcs3Kflfus3GflPiv3WbnPyn1W7rNyn5X7Vbkex4QyQSbohDqhTbAJPiEmzMplVi6zcpmVy6xcZuUyK5dZuczKZVYus7LMyjIry6wss7LMymPs1DbAJviEmNAvGGPnhFHZBsgEnVAntAk2wSfEhH7BGDsnzMp1Vh5jp/qAOmFUjgE2wSfEhH7BGDsnlAnjYqkM0Al1wrhe0gE2wSeMS7CxPHmNOCAvEhPKBJmgE0blscx5pZhgE3xCTOgX5OViQpkgE3TCrOyzcl40jhXMq8aEuCCvE+uAUacPePwtG6s8xpflv/IJMaFfMMbXCWXCo46NI2GMrxPqhDbBJviEmNBPaGN8nVAmyASdMCrbgDZhVO4DfEJM6BeM8XVCmfCo7McAnVAntAk2wSfEhH7BGF8nlAmzsszKY3x5GdAmjMoywCfEhH7BGF8+VnCMrxNkgk6oE9qEUdkH+ISY0C8Y4+uEMkEm6IQ6oU2YleusPMaXx4B+wRhfJ4zKdYBM0AkxYfytsS/GSImxymOkhA6oE9oEm+ATYkK/YIyUE8oEmTAr+6zss/IYIDGWZwyQE/oF4yR1QpkwCo4VHCepE+qENsEm+IRReazpGEQJYxCdUCbIBJ1QJ7QJNsEnzMr9qmxjEPVjQJkgEx6VexlQJ7QJj8pdBzwq9zrgUbnbgH7BGEQnlAkyQSeMOmMxxpA5ISb0C8aQOaFcoHmnKYNkUd5rjkUah3Q52iBfFIv6pHFYX1QmtfxnY8laWSSLdFFd1BbZIl8Ui/okWw5bDlsOWw5bDluOvMA6HoPJPP9uDBp/d9xm2zhqL6qLxt8tY5+NiL/IF8WiPmkcxRdlvbF1I//u2LqRf3csS8SiPqnn3x1bMmcDTpJFuqguaovSMdYt5wROSsdYy5wVGOQ5LXBS1uuDxt+VY5Avyr9bB42/K4818rzxP6kskkWjnsiguqgtSocO8kWxaDlkOWQ5ZDlEF9VrO7u0RbbIF8WiuY88j/uxZ1zbtWc8j/uxF1x9USzq13b2eiwqi2SRLqqL2rU/vNoin3uhxqK1j3LM5J7J8ZH7o619lOMj90yOj9wabW0/W9vP1vbL8ZF7wdY+srWPcnzkXrC1j2ztI1sOWw5fDl8OX/soj+Jxg+V5FJ8ki3IJxjbIo/iktsgW+aJY1C+KPIpPKouGQ8sgXVQXtUW2yBcNx7hJjTzak/JoP6kskkW6qC5qi2yRL1qOshx5tKsOKotkUTrqoLqoLUpHG+SLYlGfpOmwQVlvbCuti9oiW5T1+qBRb9yKRo6AOrZVjoCTyiJZNBzj/iZyBJzUFtmi4ahjPfK4H/cbkeePcZ8Ref6oYwlyLLTxN/L8cVJd1BbZIl8Ui4Zj3ExEjo+ThmNcvkeOj5N0UV3UFtmidMSgWNQn5fg4qSySRbqoLmqLbNFy+HLkeWbcRUSeZ04qi4bDxt7Kc89JddFw2NgaeT4aNxOR56OTYlGflCP5pLIoHeO4ypF8Ul3UFtkiXxSL+kU9R/JJZZEs0kV1UVtki3xRLErHY2/1HMknlUW5P+ogXVQXtUW2yBelIwb1STmSTyqLZJEuqotymfugWNQn5ag9qSySRbqoLmqLbNFy6HLoctTlqMtRl6MuR12Ouhx1Oepy1OWoy9GWoy1HW462HG052nK05WjL0ZajLYcthy2HLYcthy2HLYcthy2HLYcthy+HL4cvhy+HL4cvhy+HL4cvhy9HLEcsRyxHLEcsRyxHLEcsRyxHLEdfjr4cfTn6cvTl6MvRl6MvR1+OPh3lOA6wgAIqWMEGGuhggNgKtoKtYCvYCraCrWAr2Aq2gk2wCTbBJtgEm2ATbIJNsAk2xabYFJtiU2yKTbEpNsWm2Cq2TIQxffJAARVsV5A90EAHA+wL2wEWUEAFK4itYWvYGraGzbAZNsNm2AybYTNshs2wGTbH5tgcm2NzbI7NsTk2x+bYAltgC2yBLbAFtsAW2AJbYOvYOraOrWPr2Dq2jq1j69j6spXjAAsooIIVbKCBDgaIrWAr2Aq2gq1gK9gKtoKtYCvYBJtgE2yCTbAJNsEm2ASbYFNsik2xKTbFptgUm2JTbIqtYqvYKraKrWIjSwpZUsiSQpYUsqSQJdl+UsZEZ8kOlIkKDtuYtC3ZijLRwGylaIkB9oWZJRcWUMC09cQKNtBABwPsCzNLLiyggNgcm2NzbI7NsTm2wBbYAltgC2yBLbAFtswSzz2UWXJiZsmFBRRQwWxRKYkNNDAbVSQxwD7xbIS5MBtfsu3qWBWuVpcTA8wKY8deDS8nFjCbXixRwQo2MG2e6GCAfWEmwZjJLtniUsZEc8kml4kO5vY9/1pfmGP+wgIKqGAFs1XnSDTQwQD7whzzFxZQQAUriK1iq9gqtoqtYcsx33Nn5ejuuY9zdF9ooIMB9oU5ui8soIAKYjNshs2wGTbD5tgcm2NzbI7NsTk2x+bYHFtgC2yBLbAFtsAW2AJbYAtsHVvH1rF1bB1bx9axdWwdW1+2bLGZWEABFaxgAw10MEBsBVvBVrAVbAVbwVawFWwFW8Em2ASbYBNsgk2wCTbBJtgEm2JTbIpNsSk2xabYFJtiU2wVW8VWsVVsFVvFVrFVbBVbxdawNWwNW8NGlihZomSJkiVKlihZomSJkiV6ZokmKljBBhroYIB94ZklJxYwbZaoYAXTVhMNdDDAvvDMkhMLKKCCFcQW2M4sicQA+8JszRvPFks2GE0UUMEKNtBABwPsE7PlaGIBBUybJdpcyHrmwziF1jMfThwVsn8324smKljBBho4lnc8sCrZajSxL8x22QsLKKCCFWyggdgEWzbQjkdlJVuQJhYwbZqoYAXTVhMNdDDAtOWmzpa+7GjONiQpuamzie/CBho46kpuvmyolVyLbKmVXJxsqpW0ZVvthQIqOGySi5PttRca6GDacnmzu1ZycbK/dnRcluxQEs3FyR5bTUV22V7YQAMdDLAvzI5bzWXIntsLdR2e55g/sYEcv+5ggGsU1nPMn1hAAbEFtsAW2Bjz2e4kmtssm3FPzDF/Ya5Q/rc55i9UsIINNNDBAPvEbIOaWEABh2082irZDjWxgQY6GOCwjYdeJVujJhZQQAUr2EADHQwQm2DLfKiaKKCCaWuJabNEA9PmiQGmLTdU5sOFBRRQwQo20EAHA8RWsVVsFVvFVrFVbBVbxVaxVWwNW8PWsDVsDVvD1rA1bA1bw2bYDJthM2yGzbAZNsNm2AybY3Nsjs2xObZs3h+PaB9ooIMBrnNsdnlNLKCAClawgQauM3r2eD1uDhPXWTq7uqTlKMx8uNBABwPsE7PDa2K2kkvi2r52rDW2I8C+8BzzJ2Z7uiYKqGAF1960gq04GODamyYHWEBZy3CO+RMr2EBby3D+oObEALEx5o0xb4x5Y8wbY94Y86br2DFlSypbUtmSZ5t/LkNlS1a2JGPeGPPGmDfGvDHmjTFvjHlr7LdzzJ/IlmxsycZ+yzF/IVuSMW+MeWPMG2PeGPPGmDfGvDHmzdhvxpY0tqSxJY0tmWN+PMsu2Qo3MbdkS1Swgg3MdctlyDF/YYB9YY75CwsooIJpy4XMMX9hXj+c2NcozDE/ehtKNsxNFFBB9lBnD3X2UOdY7xzrZxIM9OMA1x7yQ0AFK9hAAx0McB0P2Vcno028ZGPdxAqOuqOdo2Rv3WN+KtHBAPvCzIcLCyigghXMq7YUn7MHJ/aF5+zBiQUUUMEKNtBAbIpNsVVsFVvFVrFVbBVbxVaxVWwVW8PGnOPZpXchtoatYWvYGraGrWEzbIbNsBk2w2bYDJthM2yGzbE5Nsfm2BybY3Nsjs2xObbAFtgCW2ALbIEtsAW2wBbYOraOrWPr2Dq2jq1j69g6tr5sZ0/ihQUUUMEKNtBABwPEVrAVbAVbwVawFWwFW8FWsBVsgk2wCTbBJtgEm2AjS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgS4IsCbIkyJIgSzpZ0smSTpZ0sqSTJZ0s6WRJJ0s6WdLJkk6WdLKkkyWdLOlkSSdLOlnSyZJOlnSypJMlnSzpZEknSzpZ0smSTpZ0sqSTJZ0s6WRJNlLKaGIt2Uk5UcEKNtBABwPsC/MO5UJsFVvFVrFVbBVbxVaxVWwNW2ZJPjTO7koZHbAl2ysnVrCBBjoYYNrOd04cYAHTluK8Q7mwgmmzRAMdDDCfgo/L/LPf8sICCqhgBRtooIOxMFMjuwGyy1Ls/KcKVrCBBjoY4Nhm2SSX3ZYTCzhs42eHJRsuJ1Zw2Dzf/ZF3KBc6GGBus5Jv/DjAAgqoYAUbaKCDsTBnMFwTBVQw16ImNtDAXIuWGGBuM8u3lBxgAdOW7zPJO5QLK9hAAx0MMG2Rr0I5wAIKqGAF5w9z5GylHA9D5GyllMS8qriwgAIqWMEGzl/jyNlVeWGAfWFeVZQTCyigghVsoIEOxkJjzxt73tjzxp439ryx5409b+x5Y887e97Z886ed/a8s+edPe/seWfPO3ve2fPBng/2fLDngz0f7Plgzwd7PtjznT3f2fOdPd/Z850939nznT3f2fOdPd/Xnj87JcuJBRRQwQo20EAH154v55jviQIqWMGxL+JINNDBAMdajB9hytkTeWEBBVSwgg000Bfm6B6/JZbsfpwooIIVbGCuRUt0MMC+MM/+FxZQQAUr2EBsFVue/UcjmWT344V59r8wbZ4ooIJpyz2UZ/+eOyDP/qM5QbL7cWKAfeH5yqATCzhsPY+S88VBJ1awgQY6GGBfeL5G6MQCYnNsjs2xOTbH5tjOFwvl9j1fLXRiAdOW2+x8wdCJFWyggQ4+bHrkph75cOHIh4kFFFDBCjbQQAex9WXL7kc9SmIBBUybJqbNEhtooIMB9oXlAAsoYNo8sYJpi0QDHQxw2Eouer6q6MICCqhgBRto4LBlmGdX5cS05dbJ1xddWEABFUxFTTTQwQD7wpqK3CS1gAIqWMEGpi03VL7V6MIA+8J8t9GFBRRQwQo2EFvDlu86yne+ZYPlhfm+owuHLU+h2WA5UcFhy3NhNlhqnuqywVIlN9QIkIkB9oUjQCYWME9USW2RLfJFsahPyhF8vVTuAAuYzzOSdFFd1BbZIv9lvp0uK1pibgZPrOfrsSTbFS+yRWMb1KRY1CflSDypLJJFKYnECua27okG+sIccHokjgqjnUXOt4FdOCpo0igwfuMs5yvBLgywL8yRdWGZm0RlkS6qi9oiW9TXRswhc73ULxc0lymHzIW5oLktcshcmEuaxearwGS9C0zWy8BkvQ1M1uvAZL0PTM7Xf12Ya5kLMl/4JeuNX5I9gReNv517IQ/+k9oiW+SLYlFKEvO4v3BYzuLjxDlRwVG05t70PG5yF8YBjgq57CFrw4SCFWxgls29GQ4G2NcGz5F0YQGxdWwdW8fWsXVsHVtftuzvm1jAZcv+vokVbKCBfh3q+Yax8/DNVsALywEWUBbmearmIuRgurCCeX2RZIt8USzqk/Jy96SySBbporpoOXQ5dDl0OXQ58hw1WoIk3xg2UcBcmUis4NiINbdcDrgLHQywL8whd2EBh200ZUi2602sYNpyeXMwXujgsLXcDzlET8whemEGe5Is0kV1UVtki7JiHhs58lruzhx5LZffK9hAA8eStvP9oAH2hTlKLyxgXmglpSy3fI7SCxtooIMB9oU5Si8soIDYOraOrWPr2HKUWm6yHKWJ2ZE3sYACKjhs4wm1ZEfeRAMdDLAvzGF6YQEFVBBbwZanyjELK9mRNzHAtI39mh15EwuYNktUsIINTNv5Mti0jcM5e+90zAdK9t5NFFDBUddz8+Vlas7eZO+d5oxM9t5pzr1k793EvjAj4MK0nW+iFVDBCqYtlzfHfc4CZMOd5uRiNtxp5OLkuM+b22y4myigghVsoIFpO9+SGwtzsI8pc8kuu4kCKpiKXPTzpHyigQ7GHPLtDILEPDFfWEABFaxgA0fdvHHPfroLMwguzMuK3JIZBBcqOOrmjXv2000ca5H3xNlPNzHAtOUyZBJcWEABFaxgA9OWx1kmwYUB9onZezexgHmqKYl5ZrbEdR1gh4MB9oXntfGJBRQwrwNqYgUbaGBeB3higOu6z86L5hMLKKCCFWxg3uLkauZVc0/MMX9hAQVUsIINzH2RihzzFwbYF+aYlxMLKKCCFWyggQ7GwhzoozNcsstuooK5Fj2xgQb6eHHukRhgH5gHzBjzEwsoA3PPjzE/sYINNNDBANM2Bk522U0soIAKVjD3fC6Zs+edPR/s+WDPB3s+2PPBng/2fLDngz0f7Plgz3f2fGfPd/Z8Z8939nxnz3f2fGfP97Xns8Mt8oyeHW4T28CaaGBf/8EYWRMLKAvzjbijP1iy0WyigbkLcxnyzbgX9oX5dtyjJxZw7MKcNspGs4kVHLacCspGs4kOBtgX5htzLyyggApWEFvD1rA1bA2bYcvDPuegsnms5mv5s3msjvffSTaPTewL8wC/MJc3EgVUsIINHDbJbXa+v/rEAPvC8y3WJxZQQAUr2EBsgS2wBbbzzdZHYgEFVLCCDUxbHojne65PjIlxvr76xPwPNDHA3NTjkMt+r4kFzMVpiQpWMBfHEw1MWyQGOGx5+5D9XjUjKPu9at7XZL/XxGHLM2/2e01soIEOBtgX5sutL0xbLmS+4DqnMrLfq+akRfZ71Tz7Z2dXzRN2dnZN7Atz8F5YQAEVzGK51XNsXtgX5ti8sIACKpjFcgfkyMob42ywmthAA/Ov5crneLuwL8zxdmEBBVSwgg00EJtjc2yBLbAFtsAW2AJbYAtsgS2wdWwdW8fWsXVsHVvH1rF1bH3ZssFqYgEFVLCCDTTQwQCxFWwFW8FWsBVsBVvBVrAVbAWbYBNsgk2wCTbBJtgEm2ATbIpNsSk2xabYFJtiU2yKTbFVbBVbxVaxVWwVW8VWsVVsFVvD1rA1bA1bw9awNWwNW8PWsBk2w2bYDJthM2yGjSzpZEknSzpZ0smSTpZ0sqSTJZ0s6WRJJ0s6WdLJkk6WdLKkkyWdLOlkSSdLOlnSyZJOlnSypJMlnSzpZEknSzpZ0smSTpZ0sqSTJX1liR4rS/RYWaLHyhI9VpbosbJEj5Uleqws0WNliR4rS/Q4sBVsBVvBVrAVbAVbwVawnVERiQIqWMEGGuhggH3hGRUnYlNsik2xKTbFptgUm2Kr2Cq2iq1iq9gqtoqtYqvYKraGrWFr2Bq2hq1ha9gatoatYTNshs2wGTbDZtgMm2EzbIbNsTk2x+bYHJtjc2yOzbE5tsAW2AJbYAtsgS2wBbbAFtg6to6tY+vYOraOrWPr2Dq2vmzlOMACCqhgBRtooIMBYivYCraCrWAr2Aq2gq1gK9gKNsFGlhSypJAlhSwpZEkhSwpZUsiSQpYUsqSQJYUsKWRJIUsKWVLIkkKWFLKkkCWFLClkSSFLCllSyJJClmSvVR0PdzR7rep4TqXZa1XH52o0u6rqeIyj2fJUr+90CajgUIwpDs2Wp4kGOhhgX5iD7MICCqggtsAW2HKIjNkZzYaliW1iNiHV8axDswlpooBZwRNHhfGkQrMJaaKBDgbYF+Zhf2EBBVQQW8FWsBVsBVvBJtgEm2ATbIJNsAk2wSbYBJtiU2x52I/ecs0mpIkVbKCBDgbYF+Zhf2EBsVVsFVueAMcTJs2+oTqeMGn2DVXP3Z2D4UIHA+wL81R3YQEFVLCC2AybYTNshs2xOTbH5tgcm2NzbI7NsTm2wBbYAltgC2yBLbAFtsAW2Dq2jq1jy3E8nutpNi5NbKCBDgbYJ2ZL08QCCqhgBRuYNk90MBaeozsSs0JPHBXGs0XNLqaJDgbYF+Y4vrCAAipYQWyCTbDlOB7PNzVbni7McXxhAQVUsIINNNBBbIqtYqvYchyPx62aTVITK9hAA33h+YW3mpgVWmJWyN2SY/5CAx0MsC/MMX9hAQVUEJthM2w55iMPmBzzF/aFOeYvLKCAo27PvZnjuOfmy3F8Yo7jC0eF8WBVz28sXqhgBRtooIMB9oU5ji/E1rHlOO65W3IcX9jAtOUgy3F8YdpyjXMcj4duen6H8cKHrY1nappNUxMVrAMlsYE2UBN9YE2MgS2xDxzi7JqaWEABFaxgAw10MEBsgk2wCTbBJtjyG91HbpL8LPd4KKTZaNXG4x/NTquJFRwLWXKT5Fe6L3QwwL4wv9BdcvPlR7lLbr78Lnd+LbTmp7kvDLAvzG90X1hAARWsYNos0UAH05abJD/NeGJ+nPHCAqYtt1l+ovHCCq5Ly+ykmuhgXsjmlszBe2IO3gsLKKCCacudlZ9uvNBABwPsC/Pr3xcWUEAFsQW2wBbYAltg69g6to6tY+vYOraOrWPr2PqyZd/VxAIKqGAFG2iggwFiK9gKtoKtYCvYCraCrWAr2Ao2wSbYBJtgE2yCTbAJNsEm2BSbYlNsik2xKTbFptgUm2Kr2Cq2iq1iq9gqtoqtYqvYKraGrWFr2Bq2hq1ha9gatoatYTNshs2wGTbDZtgMW372dTya1ezRmtgX5sdfL6xg/rWSGAvzjJ5nsmyrmtjA/G8lsS/MIX1hAQVUsIINNNBBbH3ZsoFqYgEFVLCCDTTQwQCxFWwFW8FWsBVsBVvBVrAVbAWbYBNsgk2wCTbBJtgEm2ATbIpNsSk2xabYFJtiU2yKTbFVbBVbxVaxVWwVW8VWsVVsFVvD1rA1bA1bw9awNWwNW8PWsBk2w2bYDJthM2yGzbAZNsPm2BybY3Nsjs2xOTbH5tgcW2ALbIEtsAW2wBbY8vIgP1RvZ5ac2BeeAeKJAiqYip7YQAOHYnR8aHZjTewT851nEwsooIIVbKCBDgaIrWAr2Aq2gq1gK9gKtoKtYCvYBJtgE2yCTbAJNsEm2ASbYFNsik2xKTbFptgUm2JTbIqtYqvYKraKrWKr2Cq2iq1iq9gatoatYWvYGraGrWFr2Bq2hs2wGTbDZtgMm2EzbIbNsBk2x+bYHJtjc2yOzbE5Nsfm2AJbYAtsgS2wBbbAFtgCW2Dr2Dq2jq1j69g6to6NLHGyxMmSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEuCLAmyJMiSIEvizJKSaKCDadPEvvDMkhPT1hIFTFskVrCBBjqYtp7YJ2b7Xhs/XdVs32ujIVSzfW/isI3OTs32vYkNHLbxO0vN9r2JAQ7b6MvUbN+bWEABFaxgAw10MEBsgk2wCTbBJtgyKrKVJ/vwWj52zj68VnObZShcWMEGjoXM59LZhzcxwL4wQ+HCYWu5UTMUWm6+DIULK9jAtOXyZii0XIYMBTvr9oUZCuPXdpp9eC0fGmcf3sRhy+fH2YfXLItlKJyYozsflmZDXcunk9lQN7GCY3HymWU2yTXP5c0Re6GAClawgQY6GGBfGNgCW2ALbIEtsAW2wBbYAlvH1rF1bB1bx9axdWwdW8fWp61mk9zEAgqoYAUbaKCDAWIr2Aq2gq1gK9gKtoKtYCvYCjbBJtgEW47Y8Yy1ZhfdxAYa6GCAfWGe/cdTz5pddBMFrNfxW7N1bqKBDgbYF+bovrCAAiqIrWKr2Cq2iq1ia9gatoatYWvYGraGrWFr2Bo2w2bYDJthM2yGzbAZNsNm2BybY3Nsjs2xOTbH5tgcm2MLbIEtsAW2wBbYAltgC2yBrWPr2Dq2jq1jywAZz8Zrts5NdHDY4vxv+8RsnZs4bONZc83WuYnDNh5G12ydm9jAtFmigwH2hRkgFxZQQAUr2EBsBVvBVrAJNsEm2ASbYBNsgk2wCTbBptgUm2JTbIpNsSk2xabYFFvFVrFVbBVbxVaxVWwVW8VWsTVsDVvD1rA1bA1bw9awNWwNm2EzbIbNsBk2w2bYDJthM2yOzbE5Nsfm2BybY3Nsjs2xBbbAFtgCW2ALbIEtsAW2wNaxdWwdW8fWsXVsHVvH1rH1ZZPjAAsooIIVbKCBDgaIjSwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTIEiFLhCwRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTJEiVLlCxRskTPLPFEBwNM22OWqtYzS04s4LCN9tN69lpeWMEGDtvoRK1nr+VoCK1nr+Vo/axnr+WJmSUXFlBABSvYQAMdxJZZMl7bU89eywsLKKCCFWyggQ4GiE2xKbbMkvFSo3q2aF5YwQYa6GCAfWFmyYUFxFaxZZaMhtt6tnNeaKCDAfaFmSUXFlBABbFlloz23nq2c17oCzM1LswKefSNfLAjD66RDxMNdDAG5tE38uHCkQ8TCyigghVsoIEOYnNsgS2wBbbAFmnLIRINTFsev+FggGnLjdoPsIACKljBBhroYIDLli2aEwsooIIVzGJjx2avpY3W5Zq9ljZal2v2Wk6sYAPHQo4u5pq9lhMD7AvHQJ84bCWXYQz0iQpWsIEGpi0XXQLsC/UACyigghVsoIHYFJumLbdZPcACDttoFqzZazlx2MZ7XGr2Wk4ctvE24pq9lhOHbXT11Oy1vHAM9IkFFFDBCjbQQAexNWyGzbAZNsNm2AybYTNshs2wOTbH5tgcm2NzbI7NsTk2xxbYAltgC2yBLbAFtsAW2AJbhoLk8ZuhcKGACqYtD6MMhQsNdDDAPjGbPCcWUEAFK9hAAx0MEFvBVrAVbJkao72sZuOmjafKNRs3L8x8GI+SazZuThRQwQo20MCsO2I7mzHPHZDNmOf2zWbMiQ00cKzxeHBdsxlzYl+YY/7CdexYxVYVrGADDXQw1jKcYz6xHWABZS1DjvkLK4iNMW+MeWPMG2PeGPPGmDdbR6oZW9LYksaWzDF/LoOxJY0tyZg3xrwx5o0xb4x5Y8wbY94Y83aO+VwGZ0s6WzLYksGWzDE/3txYsxlzYm7JrJtj/kIDHcx1y2M9x/yJOeYvLKCAClawgWnLgZNj/sJ1gGczpo2mh5rNmBMFVHAdGtmMOdFABwNch302Y05cO8uLgApWsIEGOhjgOjSy7dJG60bNtsuJFRx1a26HHP41lywvDy4MsC/My4MLCyigghXMujUxwL4wQ+HCrJtrkaFwoYIVzEuqSDTQwQD7wgyFCwso4Lq2d67tnWv7bKW0emJfmMN/NH/UbKWcKOBYi5ZHVA7/Cxs41qLlHsrhf2GAfWEO/wsLKKCCFWwgtvOpZy7D+dTzxAIKqGAFG2iggwFi69g6to6tY+vYOraOrWPr2PqynU2TFxZQQAUr2EADHQwQW8FWsBVsBVvBVrAVbAVbwVawCTbBJtgEm2ATbIJNsAk2wabYFJtiU2yKTbEpNsWm2BRbxVaxVWwVW8VWsVVsFVvFVrE1bA1bw9awtdnoVM+myQsNzHFcEwPsCzM1RudWzabJiQLmOI7ECjbQQAcD7AvP1DixgAJic2yOzbE5Nsfm2AJbYAtsgS2wBbbAFtgCW2Dr2Dq2jq1j69g6to6tY+vY+rJl0+TEAgqoYAUbaKCDAWIr2Aq2gq1gK9gKtoKtYCvYCjbBJtgEm2ATbIJNsAk2wSbYFJtiU2yKTbEpNsWm2BSbYqvYKraKrWKr2Cq2iq1iq9gqtoatYWvYGraGrWFr2Bq2hq1hM2yGzbCRJZ0s6WRJJ0s6WdLJkk6WdLKkkyWdLOlkSSdLOlnSyZJOlnSypJMlnSzpZEknSzpZ0smSTpZ0sqSTJZ0s6WRJJ0s6WdLJkk6WdLKkkyWdLOlkSSdL+sqSdqwsacfKknasLGnHypJ2rCxpx8qSdqwsacfKknasLGnHga1gK9gKtoKtYCvYCraCrWAr2ASbYBNsgk2wCTbBJtgEm2BTbIpNsSk2xabYFJtiU2yKrWKr2Cq2iq1iq9gqtoqtYqvYGraGrWFr2Bq2hq1ha9gatobNsBk2w2bYDJthM2yGzbAZNsfm2BybY3Nsjs2xOTbH5tgCW2ALbIEtsAW2wBbYAltg69g6to6tY+vYOraOrWPr2MiSQpYUsqSQJYUsKWRJIUsKWVLIkkKWFLKkkCWFLClkSSFLCllSyJJClhSypJAlhSwpZEkhSwpZUsiSQpYUsqSQJYUsKWRJIUsKWVLIkkKWFLKkkCWFLClkSSFLCllSyJJClhSypJAlhSwpZEkhSwpZUsiSQpYUsqSQJYUsKWRJIUsKWVLIkkKWFLKkkCWFLClkSSFLCllSyJJClhSypJAlhSwpZEkhSwpZUsiSQpYUsqSQJYUsKWRJIUsKWVLOLOkDzyw5sYDDNn5u07Kzc+KwjffvtOzsnGjgsI23PLbs7Jw4bOMHOy07OycWMG2WqGDaWmIDDUxbrlBmyYXDNu5uW3Z2Thy2cUvbsrNzooLDNn6g0bKzc6KBDgbYF2aWXFhAARXEVrAVbAVbwVawCTbBJtgEm2ATbIJNsAk2wZapMX5x0rJb08Y7+Vp2a9p4+17Lbs2JAfaFmQ/jnXwtuzUnCqhgBYdtNPq37Nac6GCAfWHmw4XDFrkWmQ8XKljBBhroYIB9YebDhdgMW+ZD5ObLfLiwgWnLDZX50POgzXy4cNhGK0/Lbs2Jw9bz+M18uFDBCjbQQAcD7AszHy7EFtgCW2ALbIEtsAW2wNaxdWwdW8fWsXVsHVvH1rH1ZctuzYkFFFDBCjbQQAcDTNs4ELNbc2IBBUxbS6xgAw10MMC+MPPhwgIKiE2wCTbBJtgEm2BTbIpNsSk2xabYFJtiU2yKrWKr2Cq2ii1TY/Q8tezAtPEEpGUH5sSsEIkCKljBBhroCzMJRqtUy67K6yDIMX/u4xzzFxro4GONfTRQteyqvHCM+YkF5EhlzCtjXhnzyphXxrwy5pUxr8GRGhypwZF6jvkTWbcx5n30UrXsqpzoA8+6AfaF/QBz3XK/jTE/UcEKNtBABwNM2zgIsqtyosydla2UPpqiWrZSTmyggT53QLZSTlw7K1spJxZQQAXXzqqlgQY6GODaWVUOsIAC5lpEooEO5lrkdhhD+vGwd+AY0hMLKKCCFWyggb6wZt2SWEABFcy6uRa1gQY6mJcduWNzoJ+YA/3CAgqoYAUbaOB4yNLSlu2RFxZQQAUr2EADHQwQm2NzbI7NsTk2x+bYHJtjc2yBLbAFtsAW2AJbYAtsgS2wdWwdW8fWsXVsHVvH1rF1bH3ZzvdaXlhAARWsYAMNdDBAbAVbwVawFWwFW8FWsBVs+Qh1PH9r53stT8xHqBfmyGqJAiqYNk1soIE5siwxwL4wH6GOR3ztfK/lhQIqWMEGGuhggH1hxVaxVWwVW8VWsVVsFVvFVrE1bA1bw9awNWwNW8PWsDVsDZthM2yGzbAZNsNm2AybYTNsjs2xOTbH5tgcm2NzbI7NsQW2wBbYAltgC2yBLbAFtsDWsXVsHVvH1rF1bB1bx9ax9WU7X6h5YQEFVLCCDTTQwQCxFWwFW8FWsBVsBVvBVrAVbAWbYBNsgk2wCTbBJtgEm2ATbGSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVGlhhZYmSJkSVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVOljhZ4mSJkyVBlgRZEmRJkCVBlgRZEmRJkCVBlgRZEmRJkCXZJurlRAUrmLaeaGDedURigH1hZkk+NTrbRC8c65aPoM420QsrOGyW4sySC4dt/D6rZZvoxL4w50AkK+QcyIUCKljBBhroYIB9YcVWsVVsFVvFVrFVbBVbxVaxNWwNW8PWsDVsDVvD1rBZ1s3dYlmhJmaFlthAAx3M5c09lFOgJ+YU6IUFFDBteRh5BRs4bJo7duTDxAD7wpEPEwsooIIVbCC2wBbYAlvH1rF1bB1bx9axdWwdW8fWly1bPycWUEAFK9hAAx0MEFvBVrAVbAVbwVawFWwFW8FWsAk2wSbYBJtgE2yCTbAJNsGm2BSbYlNsik2xKTbFptgUW8VWsVVsFVvFVrFVbBVbxVaxNWwNW8PWsDVsDVvD1rA1bA2bYTNshs2wGTbDZtgMm2EzbI7NsTk2x+bYHBtZ0smSTpZ0sqSTJZ0s6WRJP7OkJFawgQY6GGBfeGbJiWmriQIqmDZJbKCBabPEAPuFlq2fPn4mZdn6OVFABSvYQAMdDLAvLNgKtoIts2T8EsuOMzVyIc8kOFFABSvYwKcKuWQnBtgXZhKM31FZNm5OFFDBCjbQQAcD7Asrtootk2D8EsuycXNiBRtooIPDNn5SZdm4eWEmwYUFFFDBCjbQQAexNWyZBGOa27Jxc6KAact9nEkwvqNr2bg5MW25WzIJLkxbbqhMghMzCS4soIAKVrCBBjqIzbEFtsAW2AJbYAtsgS2wBbbA1rF1bB1bx9axdWwdW8fWsfVly8bNiQUUUMEKNtBABwPEVrAVbAVbwZZXFaPxzbJxc6KBDq7cycbNC+UACyigghVsoIG5Fn3gmQ81cVSwI7GCDTTQwQD7wkyC0bNnpbJ9K2tcWeNzzJ/YF+aYH/dOlg2WEwVUkL3ZsDX2ZmNvNvZmY28ae/Mc87kM55g/UUH2Zo75cxlyzF/oIDbGfGHMF8Z8YcwXxnxhzBfn2HG2pLMlnS2ZY/5chmBLBluSMV8Y84UxXxjzhTFfGPOFMV+C/XaO+RPZkp0t2dlvOeYvZEsy5gtjvjDmC2NeGPPCmBfGvDDm5Vj7TY4GGuhggLklx8DJBsuJuSVrooAKVjDXLZchx/yFDgbYF+aYv7CAAqYtFzLH/IV5/XD+BzFHYbZS+nj5vOVLMicWUMC1h0Qr2EADHQxwHX3ZdnntgMoequyhyh6qFWyggQ6u4yEbLH102Vo2WE5UcNT13A6ZD55LlvlwoYMB9oWZDxcWUEAFs24eJZkEFwbYF2YSeB4lmQQXCqhgzimc2EADHQywL8wkuLCAAubWaYkGOhhgrsW4ssmmyYkFFHDMidU8PHN28cIGGuhggH3i+YrLC3PreGIFG2igg7Ewx7FnsRyxo+nXsuXRx+u/LVseJzo4KozvVlu2PF6YIzYksYACjuUdXcGWLY8TG2iggwH2hTmOR3uvZcvjRAEVrGADx1aXXPQcsed2yBF7IVsnR+zoFbZsbpxYwQYamGthiQH2hXmevzDXIm05ji9UcNh67oAcxxcaOGw9VyjH8YV9YY7jyD2f47jnbslx3HOj5jjuuXXyPH9hA7NurluO4xNzHF9YwKyb65Yj9jy4csRe6GAszGF64Rg4JZfs/IDviQ0cu7Dkkp0f8D0xwL7w/IDviQUUUMEK5kbNbZYn4Qv7xLOj8cJc+UgUUMEKjrUYXX92fZP7RAcD7AvPb3KfWEABFbTrU+mWbYzez38aYF+Yg/fCR9048q+NwTtRwQo20EAH4/oau2Vz44Vj8E4soIAKVrCBBvrCMXjjOLGAAiqYayGJDTTQwbEWOaSzufHCMXgnFlBABSvYwBgKTewL7QALKKCCo26eZs6Pdl9ooIMB9oX50e48HZwf7b5QQAUr2MBcizFasmExjly3EFDBrJDHWX6f90IDHQywL+wHWEABFcTWsXVsHVvH1pctGxYnFjCPHUtsoIEO5tbxxL6wHGABBVSwgg1MWyQ6GGBfKGnLRT9H94kCKljnzmrn6D7RQAcD7Av1AAso4Kg72pEtmxAnOjjqjh5kyybEGC3Glk2IEwso4FiLPDNkE+LEBhqYttxDNW25oWpf2A6wgAIqWMEGGuggthzzeQWSTYgTCyigghVsoIEODlte3mYTYkiusR9gAQVUsIINNNDBALFF2vLgyny4UEAFK9hAAx0McNg0D4KRDxMLKKCCFWyggcOmedCOfJjYJ2YT4sQCCqhgBTONSqKBDgbYF5YDzLqWmMvriQ5mBU3sC+UACyigghVsoIG5HcahnC2EMd6SZ9lCOFFABSvYQAPHWox351m2EE7sCzMJLhy2mpskk+BCBSvYQAMdTJskpi1XM5PgwgIKqGAF29oXjT3U2EOZBBf2hZkEFxZQQAXHvpBc3jzPXxhgrkUecjnmL8y1yAo55i9UMNcid2yO+QsNHGuRDy2yWXBiX5hj/sICDlvLrZNj/sIKNtBABwPsC3N05zOJbACscv7T/G9zjXPEJmar38RcMksUMJfMEyvYwFyySHQwwL4wz/MXFlDAtPXECjbQQAcD7HONs6kvcg46m/omVrCBo25Oj2VT38QA+8K8Xi+5zfJ6/UIBFaxgAw30hWNc9JwmzHa4iQH2hWNcTCyggApWsIHYDJthM2yOzbE5Nsfm2BybY3Nsji2ybh5yIaAuzLNTziNmK9rErJsHYncwwD4xW9EmFlBABSvYwJjibDq7MI/qCwuYdSNRwazbE0fdnJTMprOJDgbYF45z1sQCCqhgBbEJNsEm2ASbYlNsik2xKTbFptgUm2JTbBVbxVax1axbErNCbuq6jtRsJJtYwNwXmqhgBRtooINpO7EvzFGYM7L5vsGJAubytsSsYIl94Tmyci3OkZWHxjmyTlSQYydHVt5vZiPZRAfXCMhGsguDERDYAltgC2zRFvYU56GcQ+9CB3M1z/+2T8wur4lDnDOn2eU1cYhz5jS7vCY2cNhy5jS7vCYG2BeOATmxgAKmTRMr2EADHQxw7cJ+Dr1cyHPoeWIFG2iggwH2hbp2VvZzTRRQwToHQz+H3okGOhhgX3gOvRMLKGCbIZadWxN9Hhq9riGdnVsXtgMsoIAKVrCBBjqIrWEzbIbNsBk2w2bYDJthM2yGzbE5Nsfm2BybY8theh47wVaPdWLtoWAFG2iggwGucMxurIkFxNaxdWwdW8fWsXVsfdr8OA6wgAIqWMEZxZ7dWBMdDLAvzDF/YW7JEwXMfZGKHPMXNjD3RRt4nlgtUcBcXkmc4ejZozXRQAfn6PZjjW4/zhPriXN0+7FGtx9rdHv2aF3FFJtiU2w5uk88D9pI7AvPg/bEXM38b8+D9kQFMxyPxAZmOJZEBwOcUezZZDSxgAIqWMEGzij2bDKaGGBfmAf4hQVkF/Z5/eBHt7UDuoPsrL52VjkOsIACrp1V1pWjl3Xl6OUwcEaxZzvRxL6wHGABBVSwgm1h3vnkvshmoIkVbKCBDgbYF+a8xoUFxKbYFJtiU2yKTbEptoot5zXy6Mt2ookKVrCBBjoYYF+Y8xoXYmvYGraGrWFr2Bq2hq1hM2yGzbAZNsNm2AybYTNshs2xOTbH5tgcm2NzbI7NsTm2wBbYAltgC2yBLbAFtsAW2Dq2jq1j69g6to6tY+vYOra+bNlkNLGAAipYwQYa6GCA2Aq2gq1gK9gKtoKtYCvYCraCTbAJNsEm2ASbYBNsgk2wCTbFptgUm2JTbIpNsSk2xabYKjayRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuELBGyRMgSIUuULFGyRMkSJUuULFGyRMkSJUuULFGyRMkSJUuULFGyRMkSJUuULFGyRMkSJUuULFGyRM8skcS0aWIFG2iggwH2hWeWnFhAAbGdWWKJDTQwbTUxwL7wzJJILKCAwzZ6MDyboiY20EAHA+wLM0suLKCA2Bq2hq1ha9gatobNsBk2w2bYDJthM2yGzbAZNsfm2BybY3Nsjs2xOTbH5tgCW2ALbIEtsAW2wBbYAltg69g6to6tY+vYOraOrWPr2PqyZd/VxAIKqGAFG2iggwFiK9gKtoKtYCvYCraCrWAr2Ao2wSbYBJtgE2yCTbAJNl3juJ754IkVbKCBDgbYF575cGIBBcRWsVVsFVvFVrFVbA1bw9awNWwNW8PWsDVsDVvDZtgMm2EzbIbNsBk2w2bYDJtjc2yOzbE5Nsfm2BybY3NsgS2wBbbAFtgCW2ALbIEtsHVsHVvH1rF1bB1bx9axdWx92dpxgAUUUMEKNtBABwPEVrAVbAVbwVawFWwFW8FWsBVsgk2wCTbBJtgEm2A780ESA+wLMzUuLKCACmYatcQGGpg2TQywLzyjIhIr2EADHQwwi+W6nZcSJxYwF70njomlIxc95+IvbKCBDgbYF+Zc/IUFFBBbzsUfuUlyLv5CAx0MsC/Mac0LCyjgOkk0LiUalxLZxNWP3CQ5rXlhgH1hTmteWEABFaxgA7EFtsAW2Dq2jq1j69g6tr5s2cfUR9eJZx/TxAaOxRk/afV8QdrEAPvCnLq+sIACKljBBmJTbPmwabSwePYm9dHC4tmQNP9pLk5LzMUZ1+vZkDSxgAIqWMEG5uLkhsqj+sIA0zaGUzYk9dFq4nY2XuTmOxsvSqKuRc+j+kJWKA9azbp50F5YQAEVrGADDXQwwLTloudBq7noedBeKKCCw1Zz3fKgvdBABwPsC/OgvbCAWSw3VE61j/Yyzy6kPvrEPLuQ+vgVqmcX0kQFK+gLc8589HN5dhZNzAqWmOKxSfIVYH10bnm+AmyigGnriRVsoK26OVqufxpgX5ij5cKy1jhHy4UKVpB1y0c65wrlA9sTK2ucV3h2YnbJ5JLlFd6FBjoYYHaz5NbJaznL7ZDXchdWsIEGZt1czbyWu7AvzGu5CwsooILDNp6QevYQTTTQwQD7wryWu7CAQ5GPf/I9WhMbaKCDAfaFeQF3YQEFxNax5QVcPqbJ5qWJDgbYJ2bz0sQyt3o2L01UcO2sszcpH4BmF1Lko87sQprYQANzcSwxwL4wr7kuLKCAClYwbS3RQAcD7AvzmuvCAupat7zQykdx2WQ0MdYK5SXViXl7dmEBc9Fzm+U114UVzEXviQY6FbBVbA1bw5bXXBeyWxq7pbFbGrulYWsozqugXMjzKiiXLE8o41cDfrYTXahgBRtooIMB9oV5QrkQW55QSh6peUK5sIINNNDBAPvCPKFcWEBsHVvHlmec8UMKPzuWLnQwwD7x7Fi6sIACKljBBhqYdceRevYbjR/T+dlvdKGBDgbYF+bp68ICCqhgKiwxFZ7oYIB9YZ6zxq8y/Gw9ulBABSvYQAMdDLAvrNgqtoqtYqvYKrZsSCo90cGhkNwBeTU4fgPiZ7/RhRUcxUaXuJ/9Rhc6GGBfmFeDFxZQQAUriCKPdclDI491yf2Wx/qFBRRQwazbEnN5c3fnUX1hvzDOnpwLC5h1PVHBCjbQQAcDTFsMzIuyCwsooIIVbKCBqeiJfWEOhgsLKKCCFWyggQ5iE2w5LsZrsuJs2rlQQAUr2EBbW10dDJCdlQf4eHlW5LuQ+vgRTuS7kC7MO58LC5iLo4kKVrCBBjoYYF94HusnFlBABSvYQANjrdt5P1QHnnc+J+paofPO58QGGpiL3hID7AvPO5/cqOedz4myKgS2wBbYAlueqC5ktwS7pbNbOrulY+un4n//93e//OVvf/zDP/78t7/+yz/+/qc//fL7/1n/4L9++f0//c8v//mHv//pr//45fd//e+//OV3v/x/f/jLf+d/9F//+Ye/5p//+MPfH//2cWT96a//9vjzUfDf//yXPw3639/xt4+P/2p5PHKz66+Xx8MzSpRDfihSPi5Sx21IlnjM7q4CXn/4+/Lx39fR+Zd///F8hAVwvb8WWo+1FlXlw7WoHxcZE25nhaLr71e9+9c13852rsXjVoQlEP+hhG1KjGanazuwCN7v/n0rcyM8JlvW33885vyhQGy2Y7W1GR+TrR+W6Lt9KWszPKYvPiyx25I5J3Vth6gfbsmyOSRFxpxS1pDH019qtPJjjd1hqW0tBpuzxP1Dove5Io8HdPrximxqjO8RXDXGJwRWDftpdLbdXh2zu9debfJhic2Rle9uyQqPW62nEVpuV4g1QMPKxxXuroZ/vBq7jZmfATs3ph/9oxKyiRqpMXNCWi0flijvbgrZHJly9HV0l4PIrT8thG4WYswPnAvR/eOF2OWlyNwSD+So0Bb3V6SMWcprRVr5cEU2B5YQmseHBfYjrNs6KJ6i/+c9Gu+H3q5G1TJrPB48f3z+0GOb37KGyNPWEP3xHKKbo7PF3CN2tKcKcf/AqG0dGO1plP18YOjm8HzcevVVo3OEa/y0JpvlEM7I8pgCZcfeX4qbh/i2xt2t4d+wNeLdrbEfKOtScXzQ5aOBsqlQ86Xq5zEednx4jNfN8akl1tWiHs81+v0a6usK44dz+8819O2zaq3vnlV3Fe6dSm6vxsdn1btbsz6djb62Rw5fNUr9uEZ//+q1Hd9w+Vq2dwIzhR9X9B+vS9ucGB9T6fMof2D78Pp1X8PaqtGPj2vUt4/y1t49yncV7h3lt1fj46N8uzX1WHtE9cU9Yuty5zFj/vFdie3O8fm+w3NV/Pmm4uf7kt0Neykrh0v9OENN3j4yTN89MnYV7h0Zt1fjtfx7bMK6tqb1j7emv7814+2tGW9vTf+Nt+bTsenlpbPJ4y/OxahyfLxHXN++8fb3w9PfDk9/Ozz9/fDcb8x3Lx1b4da9tI/nUmITneNNPfPeJvzj+I3NodXX0VmO53NqfGGysrayJistyoeTlfst6mzReG2n3JsNibabDTnWTcXzZdvPJeztQRL+7iDZVbg3SG6vxseDZLsxtQcb014qka/wvWan9MO5jL45IbbssDuPim79tRJab5TYH1i3ptn629HZ347O7m/Pb/V4c35ruwz3JgvLcbw7W5gR/fHDCZ0rYs/XnOORz4tF2otF6rrXHO/33RSp70477tdlTWSMLyy8uC6yZnXGG+9fLeJtFemv7hpd9yXjvdabIrtb+MdjknUP/+Dy4XTZtszdebtPivS5fx5PqvuLRXQ9y3o8dbYXi9ycQiy72bu7c4hl9wzm5iTidjlC1haJpwu5Xy/H3SJPE4lfLLLOMQ+014o8xgQP0I/imzLbXdxWsPXny4cvHmzBwfY8jr9WxDpFPh6A98/eHz+03D1FyI+rZAn3D09a+yvkW891yu7h0t0byX2Rulal1l42RfbT922NvLpZm/7+g+DdI6abT4J3JW4+Cr69Jptnwfstuh6WiUd9qYZyfDxOEf5qjePtGk+tI88j/2s11kXeo9zHNXYPmW7ePHxS49bdw35dal3T+NXi/RovHmMqncca8fG+3T6hsTWNX1w2V9/bBfE15/C4OPs4Pmp7f+fua3zDzvXCumwGbt11Oh2+ZtEfVzyvbtR1haixOcq2D5zWzdnjruTjxWibK++SP00716X75n5mtxyVWdenw+PXm2N3nmvruVdtP3Qw/HSe2z2puTmjVNo3NDy19zue2je0PH1Dz9N2i96bVtrXuDevVKy8P/T3R8etaaHy/lOn8v5jpy+sycfZYfbmJfJ+yNoxj436XONr17fN1/Ovtru+tW9oPc2LpXef3m9X5/lJw+MJ+ser4/Idq6O/9epIzAhpeuxWp/2WR9rjGZqsu7G2uZNy352k1glGKCG/2qbvt0Ftl2JVeD5V/mopdk+iyuMYq+v643iaDrUvFDnyJ7vX1EM8Xwl9pUiPpydaT81QX9kivvZL3+yXqL9picc2kM72aB9v1PodG7V+w0bdFrl7jGyHna8bkPEh1dcC/ocJc62vFlmTmONDQS8W8XUNMT5m8WIRW4fJ+ALCx0V6/YaA3z1g+paAt/xGz7U6tludXeNGyxc/XOvTa//oYPukyJpCePDTb3l+LrKZ2hkfAJjnmlo+PlHI7nnVY+eseTvbtL7Jsb2vWhv28d99ePMuh7x7eyfH5ipApKwrxcfU39OE7M8b5JMw4fdNx9ON1c/T1J+UaRwmjzuX+LDM9pAdbz6Z+9h6bPaxvz0jKke8facouwnze/cT2xI3fxFye018syb+9ozotsbNGdHPahxv17g34SW73yz9cMfaXtumN2dmP6lxa2ZWSn978u6TGrfu4PfrUlcy6/PD959riPzWy3Frhvh+jRfH3M0ZYtnF6d0Z4k8O9psHiP3GO+be7K5sfwd1c3b3kwW5Nbsr+v7pf/f7obuzu9vluDm7+8nFnXPF+3hg/sHFXTakvHuFuC1ShXlmeWqqsi9c2nldLZhePz5Q9f2nqVLffpq6LXHz2kHff5r6ycXyOs89Lu8/Pt/ufs10Oz52V8sWa7bbom+ulndFfG3UB5bXipTjWNendXvdvluSpkwT2+sX/2Fc/D+dZb568b/WaNwI2KaMbp9HtP/recTXtktdrdxSny4Rf13k7VTcHvaPy/p1pDy27EtDR0pZh2zZnPF2z5punmiaf8OJptn7m3S7a9dk82Mv66uHfBEmz4q+fL8rlftdsZdHjqyLmlFy0yS266teU6RPrxf56QUln80oipMD2l+clqxPMwn20bSk7J5cPe4C9P+8C7hf4t5VwGez8De3x/EN28O/4XnAtsjNLbLvZnxameN4bkT8WlPkofZUZtPlKdvL+Nu9lbsyFuuSYHxS9MNp9F0JZkfHlyVfK+EsRf+wxL7F+uAFP8fLHePrRUePIh/3ae9/C+u6rluf5+9+nl7d/ZLqZqeHxPs/QpV4ux9gW+LmNXi8/zvU/Ra91+mxr3Gv00Pi/S7AT2rcuxfYH2H33tXTy9tHR3//fT/31+Tjy8z+bkP1dtTXdRETVTejvtv7d979/R9LS4/39+vbP5e+vyabUb/dovfuvPX4hhnV/XLcelymR333NkaP9v5t93Y5bt7G7DbH3TvDbY17d4a6e7Z0c5OW4/07w+1y3Nuk+7dnrK0R9vSrrl+902/7DqNbP5vevwHu1nWLfsMr+fT9d/Lp+y/l0294K992g968bDnevmpRKW9ftXxS416Ovn/B8cnd170fUe5f73fv54/bGjd//bh9f9rN3wverrH5ueC+xr1fC26f5dy+od1u1Zu/Fdwvyd1jZLtNbv5WcP+mv/fX5u6xul+Xm8eqf8Ox6t9wrPo3HKv+Hcfqfqve+0nq/VeufnglpbsfUd26+dm+nrOs8fK4knnulP/p9Zy7Xz+p8mY4rR89Qd2XuDVzqtXffn662xjHOjR+ekfTzxvjG17Xp9/xvr79W1NvXcLo/jUMc07th8b0uF9hXYrZ0+OBX1XYvhhuHRmliTzV6F/YFHRQN9GPa7TtjSBR+uDn5qv7RxgtT/X5AvnnI2xboxm/R/OPXxmlre8eBd/qMlS7e4Btrvbt7cvCbYmbV/v2DUNlv0VvdRlua9zsMvysxvF2jXtdhmp3Zzrba9v0ZpfhJzVudRmqf8M9lL9/D7Vfl3tdhur1t16OW12G92u8OOZudhnq7pdTd7sMPznY7x0gFr/xjrnXZajbRzY3uww/WZBbXYYa78+a7t7YcnuKL96eNd1eBT39RkhfvI5aD2qf2qV+VcG/4xn4J1VuPgLX3ZtMv3AXtitz7xH4vsStR+CflLjzCHw/oXTzdrL+tpMWXzhG9FuOEf2eY0TfP0b0/WNE3z5GdpeovmYLHo9MnlJZf0yyun3+c+sWeVuiWKMD7ZFrT89Ltf5Uxt6dMtiXuDVlUHe/Lvqe7cEXth5PYeTj7bF7FvV4TL5m+qN81D++LXH3Kyl193Goe59J2Za4N2mwL3Fr1mC/NW5OG3yySe/NG9Ti788bfHKY9fUVtAc/X4f86jDb3aQW56WpT23kjwdUPxbZTlzeetfAfjlkvaBDHvzxcmyLNNrZW9sU2W5Yf7rc9fL8MryfN+zu7Hszz7Yl7uWZ2G+bZz9uj6eGh1/n+7aMttWD6rVsYlG2kxmVCZH2dOFb26tF4huKPF/Ef63I09yM94+L6PaHBraG32Oi5ume5qevDe0+IqWh3J89N27/qsj2tanrJk/iqRfka0Wi9FXk+aW2XyzCkkj7hiJ6bIpsf9nSeGT/fBn+c5Hdj5+ardvWZk/HyZd2cSUeH/PE8epxEivX+lFf3CZ1HWxSbbdNdqtjqzn3MeVUX9uwtfPi0x7ttSIm/tRq3L5jdTa7+HaexCaUdg+sbr5IvW6fV+nBRK3Yxwuye+GfN59FvPWnpwE/XfbtmqmUZk794TUbP23Vtns/1cGJ+HhuyPq5xic/J1lX44+t2j5em+1mXXfAqk+/jvn1Zt0W6U+T6JuD5Cvnc/v4fN7iG4613QPW3tcdxoPb5grFtu1Z6zpHnj+WJz8vy+7Z081L4e0mufcthbp7cd+tt/bvN+oX9u+2TDso0+rmNmX3IyhS+jHx8zSII76yKLwEsLjXzUTFblbeZLXgmf4w7/JzkW2T6Dpia3nq2P9SkVZWojxQX1ySp7e8VfUXl0TXJx6adntxw+r6lLVV3RTZPswy40IpXi3iq6X5geXFIvQ3PfDVIr5eEvXA9mKRbutFj/2pU/yLA9lXUj+mHp9fbPa1MvH0Wb9or8bK4+6C2c/nlPxVmXh/civen9yK9ye39tujMaUUppu9s/240yNQ+aHo8+X9T+ev8LdPgfvl6E8/E+3aPiyy/a7JmiDr8vH0yb7EWpUu9uEk7H7POKsSHi8f8H39KODBu1n2rm/PSm1L3JuV2r0O8Oas1Be2x+5k/lkZp0yrL5dpnTK+mTPs/f2909/dO233w9nv2TvP2yP663vHKNNfPef0g8vHXqS9Wkb5JuJjBH58rdR2T6nunXO2Je6dc/YlvuGc03kfdulWP9477f0HXdsSj2uTgx9beqmvFWHe8cHSXiyyvpE7Lm9eO2V05zcLfXvK2PYwftNtsazZAtHDN7fFd4s87eSvFanrhC61Hi8WaXX1ubanqccvFXlshxXUxw/TbHL78X1f7ziQ44csuV1CCttD9OMOgCa6fUh8qzu9bZ9U3exO360MLwaRo+5W5t0PBbTdKxcf8/xrPipstxjx/ubYFmmyruib/HBPrV8oQkT/dP/4lSK8Jaz5D7daPxXZviHw1rXNvsS9axt9u9/lk62xnnG10L7ZGvuXhK/unxq6KeK7JVmXAeX4aDp5vxhtXURb++Gm8Svr0tp6V3mL9nKRp7em95eLrBkk++FB9VeO9lgh8nhctymy+xnWtxS527/Tth+iune5uStx83JzW+LW5eZ+a9zs3/lkk97r32lte+q+17/zyYlmfYv2cW1UNyeaXZEuFNmdrZr+1qvTnQdTJTZLsmvO5rw5Oueeivz08oTtGwJ9vUlS/fkjzl8pUuua0K7P3+n4dZF4+5S3LXHvlGdvvy1tvzUaH/Z8bhz41daw9y8A7P0LAKu/7dawyndxnn9g9qutYe9vDXt/a7zd7rod+I8VWX1DGuW1HFN+2aH1h4mEn4p4+Y1z7PHXDi7djxdX5ymCutiLRfq6zqzHqycI7atJ7VFksyRu33CLuPt00v17ou3e4bm2i2xWZzdFSo2n5gfv9ytY4fWE7eM12b3o7PY2DfmGberbxpR1nJUxf8E2PX5akvr2Nt0thvCrO9Xy8WL4vim68RTseLFIr87MzKbI7rV+t8NoV6Rz3h1ftWf/1vaFInbMbO3PN0VfLbJeXmLPL1H5WpF1o9jtuf/w5yK7x099XTb35x8AWblf4vlFtsdz9+HPRfYrE6xMf3WzusZam6eG9a8VCXZwPL9n/Feb9bcu8sNr3HS3d3ZFZL0nR+R5m3ypiK6P28nzb7x/VWQXBI9J6zUXWMvHkWTHu51Y2wp3pwHseHsaYFvi3jTAvsStaYD91rg5DfDJJr03DWDlO6YBtsdYZci0/vHJxva/0aLpqbePvwJnZbdN7r2w1Lbvw773AhDbvWjv3gtAtiXuvQDk/pr4Zk22Eyu3Xlhq3/Apqk+W49YLS233tr57P7237RTRzS+W7Ivc/GLJtsjdV6ful+TmF0v2RW5+89Bk93vC2988/KzMza+nfFLm7qcTPytz8yMs+w188yMs+yI3P8KyHUH3XhqxHcg3X7W7r3HvVbumb3+ExfQbPsKyXY6bm3S/a+99hOWTY/XuR1g+KXP3Iyyflbn5EZb9tdqtV5R8crl35x0ln9whPd3vPf8+66f7kpyTfW+ydV/i1mSr1fhNS9ycr91v0NUM/ti29eMbvd1U670JMGvy/gSYbX+Y9S2TipV3m9lmotV2j66kPV3ctI8/Tm27Jwve162v9x9eBviFIqFF1gV0tBeL+Oobif7c8vGVIr2sn4r25xfP/arIttXq3tjdL8f6JdPjeWl/cWWE+R7pmyKmv+3KKIH4/GagXy9H+22Xo8ZajnbslsPfXg7zt1N1+xOoW6m63xr2lKq2GXS7VP2WIrdni1zfni3albg5W7QtcW+2aLs17s4W7Tfpzdki/4YHAvuzjNlqkvTnH0T/fIRsP+R2c6Jn//jq3kTP7unVzYmekLcnem6vyWaiZ7tFb070xPuflP5kOe5N9OyuD2/e2+1+NXV7omdb5O5Ez67I7Yme7ZLcnejZFrk70dPrt0z09G/5TO4nZW5P9PRv+drufgPfnejZFrk70RPx9qxEHO9P9MTx9kSP756T3AsD374n4uZEz3Y57m7S/g0TPf1bvrb7SZnbEz39W762u7/MujfRs79SuzXRs7uVvzel4OUbfsri5Rt+yrLvQbV1Ilb74dV8X+lBLatdourza5e/1si6fohZf3w351eKuKyPFMTxccej755kfUuRu3c3vv141a27m22Je3c3+xK37m72W+Pm3c0nm/Te3Y3LN3wK45P2b97p0H9ovPrpCJH4jYuI0VcfXV4s0p9bP14tEuv2RA/ZrI5+w1yr6zfMtW5XR/kQuR5ts012r+UrjdcvP7h+9Dnzz4qspokHd/mwyG7y6Yinl4ttMk1314u2vuFQrX/cveHa3771891r7G5e7e3efH73NserfMdtzidl7t6ffHagOKOnx0ezlF6/42irb782Y3+Y3Jv78d1DqJtzP757xeC9uZ9tiXtzP/fX5OO5n08G3q25H99d+96c+9mPvJuTLvsiNyddfP8ph3uTLvsluTnp8lmQ3Jzo+CxIbs5Q7Ffp5gzFvsjNGYpt0N+7nd4e9jdnKPY1bs5QbJ9k3TtnmX3DDMVuOW5u0v2uvTdD8cmxeneG4pMyd2coPitzc4Zif6t0a4bik7utWzMU9e2GmE9+Bn1nKT55fwk53354Yf9XXoJivI7Fur5YJGK9p/v5OypffJPK0w2BfLw6bducevN1LNsi9z4Lsy9x67Mwn5S481mY/X5xXq7tL78m54ci9dUiQhH9eL94vN0jsC9xq0fAo/+mJW6+V22/QflZi3u8ulfWFevjIfKrCfK8JC8XicY0S3u5CHe+uyL716Hdy/b9G9VuZfv+dZOrRhd78Y2V62eUXfzDL8tsX0d6a1t88kbTW9ti/+bb9dO45vbyO3jXy2ZbtOPFInxo54GvvoM3nCXpr76XONbOfdR7+W3ATzeb9fVtwi+OXn1/dW28ZKN1+Y4iL76/ujK3WZ/nNr9WhJcQVt8dbPsi3NCEf1wkds+wvK9LmTiOj3/MGbsfUVVb3ZuPJW4fXrl/tiS+lqTslmT3nitbl1XNniac9P5yxLFe6xCH+WY59pNWc7M+TqEf96LH7ltZvOT8eQ7gMcfxhWOkr5uqunu3auy6nm8fI7uXB94+Rj5ZknvHiLS3j5Hdctw+RnY/vrh/jMRveoy0Yz1tbcfmKwWhu68OSfzfryCMn2rsbmhc1jvZfvjmQnxlZVavcSuHbFZGv2Fl6m+8Mnyi54EvnvUes6Pr/XJa7cUiwpKIf0eROF5dnTXB2rT0V5eEFzPq8fqG7WzY9mqRSpGXv8wolUdp7fnm+cc5xahvf4VwX+LWnW+8/+OpbYmbN8/bDaq8+Vf92GzQvr0tmQHw8Ts394tRuf1+nL4/Xozdl7HuhtnuF1h3w2z/xU3hMY20D1fmkyJPX8izj7dIle1n9m5++3NX5N4c4L7ErTnAT0rcmgMs79/Dl7fv4fdNrHc+7RW7N/7xYovoHz/eie1vrsp6XZ8+nld/+Hhn97zM10x3jePjb6Bvvz4cfCT7ucRPL6TZlTA+hmBPLx7+SolYI608v5z+KyW6857uo7xSQg5C43j6btVXloI3fY939b9WovMBkfLSiozP5aynW/21peBbfKU+f07zCyXqU2vJ8y3HTyXyhbMfHuLBA8znI6PcP8J1ZU5Rf21jVD7Q9nyd8Or2fLFEHHx05KkhsshPJ9d4+5PY23HW+NjIDz/1ivsl+lqG4/kLZF8oEcpXCp4vh3+1Lbbv0rnXfhixe9D/DZ8YEJ5pydN1xq9XZvd2hce10jrOzdtHU+yfFVlPLB/c+4dFdpdN0ddVdSkfHyHR33478Pbc2Dk3Pr9C/v5BVn19g+lRYrNf+jc0/0f/hub/T3euP+3cjy4jo9tvfYTwUn15vuj49Ybdf6GVTp/djNa+iPBNU/u4SH4U5d2Jwr77utW9icLtctydKOy7nzTdnSjsux9X3Zso3AZAKZypHvz8saFDflqS3asr5oI8fZS46u1kLrpuzcvzzVuzL5SoHGH1tRJ0xcjTNyh+LtHLds6UqZ/jxRJ9/T7l6cD4yoo8v0Lz6ZW+Xylha4Lhxw6hL5TwwiXQdlu037hIMc4Nzy+e/VoRd245urxYpB98iU5e2zNifPXJXxsruubjHkdKeW0paP56nmz9QolHvqwz3PP30L9SovChtFLjtRL8oqzEa0uha8A+8LWlaMLVS/XXShjN7NFfWxGOTpXXVkT5/p22l1bEVz+PV3ulQK+8mWYz2LcPNt++He4H7xx6bS3Wcdm9vbkZXiugwtWwPHe9P6bibpdYv2HV51cvvVriaTLzSyXW0FDx9lKJ589cPHXNfKVEXdO62o7XtoUaX9l5nmN5tcRrO/Xpax3PefelbUHbb9XXdiofrtfnD9d/qcT64ufjsvvFnWr8AtBeWorxzVAuLOpLJZ4+XRrPr+f/qUTfPVMqQnQ/f+y6fGG2aN2PjA+Sv7Ymq6OkPH/V+UsljPm71wZJic6vmY/y4orwq5JD3i5RXl0Kp8RLo/1xncq2qP72Umx26vY5zuN0xscwnuOz/Xh89t3zpN7Wl6B76x//HKXvluTtud3HvSqzIe3DrwL03Q+Obn1XYL9BdZ0VH88sy4cbdFukHEyGDH6xTG/rjrU//xLza0VkPVd6YH21yOoi6c+tKF8rwtsQHlvZXjxWYw28Hk/zzL8+Vu8WefoizheLrHcqPNBeK1KO0lYuH8U/LvPJpg027dOv5b+0aR9H6tMnYA6XV1fpYO7sUWazj7bf17q9ZbZl7jUv7Evcal74pMSHzQv//Pg/f/jjn//+L3/52x//8I8//+2v//X4e/87Sv39z3/417/86fq///7ff/3j07/9x///n/Pf/Ovf//yXv/z5P/7lP//+tz/+6d/+++9/GpXGv/vluP7nn/yR6r/zx7zZP//ulzL+f3+E3GPi2B7/Xx///3Fv2WT8u/Efy+jYfvzP+Jcl/+vxiP3xP/HP/zsW9/8B"
|
|
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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"
|
|
4137
|
+
"debug_symbols": "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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
|
-
"
|
|
4534
|
+
"235": {
|
|
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
|
-
"
|
|
4538
|
+
"238": {
|
|
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
|
-
"
|
|
4542
|
+
"239": {
|
|
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
|
-
"
|
|
4546
|
+
"241": {
|
|
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
|
-
"
|
|
4550
|
+
"242": {
|
|
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
|
-
"
|
|
4554
|
+
"245": {
|
|
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
|
-
"
|
|
4558
|
+
"256": {
|
|
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
|
-
"
|
|
4566
|
+
"314": {
|
|
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
|
-
"
|
|
4570
|
+
"335": {
|
|
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
|
-
"
|
|
4574
|
+
"345": {
|
|
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
|
-
"
|
|
4578
|
+
"358": {
|
|
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
|
-
"
|
|
4582
|
+
"359": {
|
|
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
|
-
"
|
|
4586
|
+
"360": {
|
|
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
|
-
"
|
|
4590
|
+
"361": {
|
|
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
|
-
"
|
|
4594
|
+
"368": {
|
|
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
|
-
"
|
|
4598
|
+
"389": {
|
|
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
|
-
"
|
|
4602
|
+
"392": {
|
|
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
|
-
"
|
|
4606
|
+
"397": {
|
|
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
|
-
"
|
|
4610
|
+
"401": {
|
|
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
|
-
"
|
|
4614
|
+
"413": {
|
|
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
|
},
|