["..E$ ","A,sBeABrErXa0C~E~|F9766G7aBXBBCC3CE.CCPG5666(ZCCP7756569F55X","Yield."," This keyword interacts with the foreach-loop. It is a contextual keyword: yield is a keyword only in certain statements. It helps with looping.","Yield, keyword notes."," Yield allows each iteration in a foreach-loop be generated only when needed. In this way it can improve performance.","Example."," We use yield in methods that return the type IEnumerable (without any angle brackets), or the type IEnumerable<Type> with a type parameter in the angle brackets. ","Info: ","We reference the System.Collections namespace for the first version, and the System.Collections.Generic namespace for the second.","Main: ","In the part of the foreach-loop following the \"in\" keyword, there is a method call to ComputePower.","Foreach ","foreach","ComputePower: ","This receives two parameters. This method returns an IEnumerable<int> type, which we can use in a foreach-loop."," .NET 4.6\n\n","C# program that uses foreach, yield return","\n\nusing System;\nusing System.Collections.Generic;\n\npublic class Program\n{\n static void Main()\n {","\n //\n // Compute two with the exponent of 30.\n //\n ","foreach (int value in ","ComputePower","(2, 30))\n {\n Console.Write(value);\n Console.Write(\" \");\n }\n Console.WriteLine();\n }\n\n public static IEnumerable<int> ","ComputePower","(int number, int exponent)\n {\n int exponentNum = 0;\n int numberResult = 1;","\n //\n // Continue loop until the exponent count is reached.\n //\n ","while (exponentNum < exponent)\n {","\n //\n // Multiply the result.\n //\n ","numberResult *= number;\n exponentNum++;","\n //\n // Return the result with yield.\n //\n ","yield"," return numberResult;\n }\n }\n}","Notes, IEnumerable."," IEnumerable is an interface. It describes a type that implements the internal methods required for using foreach-loops. ","IEnumerable ","ienumerable","Return."," Yield return is similar to a return statement (which passes control flow to the calling method), followed by a \"goto\" to the yield statement in the next iteration of the foreach. ","Return ","return","Goto ","goto","This behavior does not exist in the Common Language Runtime. It is implemented by a class generated by the C# compiler.","Then: ","This is executed and JIT-compiled by the CLR. Yield is a form of syntactic sugar.","Some research."," Microsoft provides a method that is essentially equivalent. But the implementation uses the non-generic IEnumerable type. This introduces some inefficiencies. ","It likely results in the integers being boxed, because IEnumerable does not have knowledge of their type and instead acts on Object.","Yield: MSDN ","https://msdn.microsoft.com/en-us/library/9k7k7cf0.aspx","Internals."," The C# code you have that uses yield is never actually executed by the CLR at runtime. Instead, the C# compiler transforms that code before the runtime ever occurs. ","The compiler-generated class, marked with CompilerGenerated, instead uses several integral types.","Result: ","We see an entire class that is similar to how your code would look if you manually implemented the interfaces.","Compiler-generated class: C#","\n\n","// Nested Types\n","[CompilerGenerated]","\nprivate sealed class <ComputePower>d__0 : IEnumerable<int>,\n IEnumerable, IEnumerator<int>"," // ...\n","{","\n // Fields\n ","private int <>1__state;\n private int <>2__current;\n public int <>3__exponent;\n public int <>3__number;\n private int <>l__initialThreadId;\n public int <exponentNum>5__1;\n public int <numberResult>5__2;\n public int exponent;\n public int number;","\n // Methods [omitted]\n","}","Notes, internals."," The actual class implements several more interfaces. The punctuation characters allow the compiler to ensure no naming conflicts will occur with your code.","Performance."," Is yield return fast? Or does it incur a significant performance loss? Yield return does have some overhead, but if you need its advanced features it can be faster. ","We test two methods, one that uses a simple multiply and the other that uses yield return to do the same thing.","Result: ","The version that uses yield return runs many times slower. For simple things, avoid yield return for top speed.","C# program that benchmarks yield return","\n\nusing System;\nusing System.Collections.Generic;\nusing System.Diagnostics;\n\nclass Program\n{\n const int _max = 1000000;\n static void Main()\n {\n int[] numbers = { 10, 20, 30, 40, 50 };\n\n var s1 = Stopwatch.StartNew();\n for (int i = 0; i < _max; i++)\n {\n if (","Method1","(numbers) != 300)\n {\n throw new Exception();\n }\n }\n s1.Stop();\n var s2 = Stopwatch.StartNew();\n for (int i = 0; i < _max; i++)\n {\n if (","Method2","(numbers) != 300)\n {\n throw new Exception();\n }\n }\n s2.Stop();\n Console.WriteLine(((double)(s1.Elapsed.TotalMilliseconds * 1000000) /\n _max).ToString(\"0.00 ns\"));\n Console.WriteLine(((double)(s2.Elapsed.TotalMilliseconds * 1000000) /\n _max).ToString(\"0.00 ns\"));\n }\n\n static int ","Method1","(int[] numbers)\n {","\n // Sum with simple statements.\n ","int sum = 0;\n foreach (int number in numbers)\n {\n sum += number * 2;\n }\n return sum;\n }\n\n static int ","Method2","(int[] numbers)\n {","\n // Use yield return to get multiplied numbers and then sum those.\n ","int sum = 0;\n foreach (int number in GetNumbers(numbers))\n {\n sum += number;\n }\n return sum;\n }\n\n static IEnumerable<int> GetNumbers(int[] numbers)\n {","\n // Return all numbers multiplied.\n ","foreach (int number in numbers)\n {\n ","yield"," return number * 2;\n }\n }\n}\n\n","Results","\n\n"," 3.84 ns"," inline expression\n","50.68 ns"," yield return","A summary."," We examined the yield return pattern. The yield keyword is contextual\u2014it only has special significance in some places. It helps simplify foreach-loops."]

%iVBORw0KG;)NSUhEUg?AMk?ABGCAM?ABR/kA6)MFBMVEX::y+/rW8+ng9fXn9/i37Nj4/fys6tHL8OW/7tvj9/Da8/Tp+fLF7+Lu+fqk6MysMGrb?AETklEQVR4Xu3Y63KjOBAF4L7pDvj933ZDYicckIkbsplias6/pAq1Pre7JEyHw1KKVDodLhCmF1ILhul44nh7TzptGW6Q4RWJ3DDDCUj4LF2vLcmL2nxlCS9rj1eW4Ep/j4T/Sd5TUVKPSOrPVE90KtM4Jq+kwjNnJLSsnc9JomrwShieOSVpi5bwlSVRc3pAxP6AxOyHJKzaymxJpaleWTLpHJGmc+Kle3LPXybZI4uUOVL5qYT5Zckgb6nD4xmUyG0bonLDyM651J4y8vKgSPK0d69Jhvy5VGb6PyTDMwd40eKXMG4p/56kps7CgY9I+tv8LUnul0z1mCTffkXiqsxHJHL7HYmrcop+yXD7UxLeq5rdkphekuSuJOyVz9tlMAUBAVdjh6Tb4ZC6kiELkrMIUZXFf0WVd94O6m5LUjYzXeLFK8H9FTPLPQmrZpSYEU0mn5CgKwnv3i+wZ6mZGdYOTknFhuByKMG7fvqQlC+aV5Lgc7ln8U+nBHct9p7Qlwg2ZZbol0x9Epx3fUgKHEAeScLP+SPSl2BTwiwZPyWjVwJF7JF8VBJhz6Pd80SCwkY0pa+/Tkj6EZdkWE3xPaEvwaYUIph3pyT/vATHZJq6khijrZqSIoXlvEffG0X5TlJPSXjnTYtVtQCRl/M+0TanJMMZycduYl9CptrwNFu2hPcl/jnhE5IcP3xTXxKhKZCmRj8sSdElYZCMeBdDCTYFU1T5j.Mj1T5jE9CIEng20qiqo09iahGr6TiyYjRt7BLEkNvyOSJhExN0xaSTCfySia8rSwjckAygqT0LvqVoCl5K8mq0S8peIP8Sk6p+SVttSfo05Y/dZui3XnnYVhKZBiAa7K51c/RnO63uPjNagNKNCCliOBOcQtRzfKL8y77JwSvSqeScy4PewBJ/3KzksjthQzYlN68+yX7pYuRU6LBIelOSoDz3SHRcY8iPgmptuSREKtZ2s67XxJVdbc0+ySmml0SslVTkqrRAQnp7qeYqrMnrK9QBnzC0nbe/ZJppoQnkMLklESdKesup66k30ZRJY8ES+vYa0vKRF4J2UyRgOvIN6OqAef9xR9pa6e0to0l5M4BlfsSbApa0rgdxbrG91+xMFNbJ3ZLq+bxUT2FMbeZ16beapg11tqHpcn4liy6ynYLrA3n3SVB66KOLCvOFK8kzk/qs3S3YPCTCh+W0FwaqoPbKyHG1dCBkruI4ScV8kuQ0g87egKUraazhTG/WwTm/YyErPVjkQ5IiLVhtL+FOh9YMQqe7wcl6MUoEx2SUDRcJ24k+N6C8+6X7FsMHB4JWnTafn8ZDyf8SeV8eHpUV5uYTidOb+FIzzJsIEGb0k8lRvqthDUkCRxg10j/uwVDfJ2M647MEKMrBl/wg8Dxda3E8WFJJbc5StfM1FrO77fMWXHllrR1jK4Z7ZzZl8z0t0DI+tfu6zcF7sAXthjTxRMZbpkXzH8NfhwwVnToQg)BJRU5Er@ggg==$/9j/2wCE?gGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJycB.gI.oJCw@Cw4LDQsOEQ4ODg4REw0NDg0NExgRDw8PDxEYFhcUFBQXFhoaGBgaGiEhICEhJycnJycnJycnJ:BABEIAGsA+gMAIgABEQECEQH/xACY?E?QUBAQ)))?BgIDBAUHAQgQ?EDAgMEBwMHBwQT)?I?QMEBQYREhMhIjEHFDJBUWFxFSOBM0JSYnKCkQgkNFOSocFDVGOiFhg2RFVkc3R1o7K00dPh4+Tw8RE?gIBAwIDBwIHAQ))ECAxEEEiEiMTJBURMUUmFxgaGRsQVCYnKiwtHw/9oADAM?AEBAgEAPwDv6IiAIiIAii2Psa0eBrDJdJ2aWrkfZUFJnk8suX46BbeT/wAXZcMn/KDxlIHuaajhL6egi/2iTB6k2fS1VV0tDTnVVkwU9PE2qSWUmER+JLjGK/yg6KhqDpMLUY1+h/0ypchhf7?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?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:vxWwpOkinn2e9tWTah8Vl06+tVpzjJZxlrqMKehs3Yg0+/DeGvQ0eOqCvgr5TlMurzFtB3vo+HiuflAFPVaQ7BMJj3929vg675WnT4kw/LpZhKQH0Dm2bH3b/NcPxAD0E8cUrMJx59+eW9YzrUJbYPdCzqi/wD3oZlVm+GZrbOt7ZL6eaNrQk2lluIKeSeM5PmRtnmtLhu23a85FRU5bDPiqD4Y2+93+jZrp1qw+9HBsZT2xF2t3D6MyxJaOyczK97rhHvz6GhsVvOsJi0vpzXQ7dQjSxtu3q5Q0cdLE3C2r05eSy1u9JpVTD+o02q1Ttm8cRCIiyzECIiAIiIAiIgCIiAIiIAiIgCIiAKP4ntA3im2Eo8KkC8JmfuXjXB6nycmjwCwOWzBZds6MKXrY1FULaM89OS6YIB4Mq1bdEPQuq+xeZDpcCnJbaq1BcGipJzEoYwg+SES1CPyu/zfcosfQjGRkXtx+f8ANc8m9duutIqYaWiHhgez1V0/FP8AC/4Qq24AO20L0I3PWGX6hu9v8otQ3RNNHIUkF9eLU/8ANf8AvLpiJ7rR8H7nnvN3x/hHJbh0L1lxyGbEpaf8z/8AIW0svQ3hy2Rj1yeor5/1hE8Q/?5fiujIriqh4dqKHbZ8Tyamkw1Z6INnBA/3jMv4qxU4NwxWzjUVdtimkF9XGzk37OeT/Fb1E9nD4Yj2k3/ADSf3McaOEAGOIW?ZtICzMzN3MzK4EIA/JXEVW2Pcp3PsERF6eBERAEREAREQBERAEREAREQBERAEREB:Z$/9j/2wCE?gGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJycB.gI.oJCw@Cw4LDQsOEQ4ODg4REw0NDg0NExgRDw8PDxEYFhcUFBQXFhoaGBgaGiEhICEhJycnJycnJycnJ:BABEIAJwAswMAIgABEQECEQH/xACF?ADAQADAQE)))?QIDBAUGBwgQ?EDAwEGAwUEBwUJAQ)I?QMEERIFBhMhMTJRIkFhBxQjcYEVQlJyM2KRk7Gy0hZzkqG0JUNTVYKjwdHT8RE?gIBBAICAQIH))?ECESEDEjFBEyJRYQSRsRQzUnGCodH/2gAMAw?AQECAQA/APv6EIQAIQh?hCEAZzG4Bfz5LiXfuuTUdDfNcZaw4OB+U35Kv.cVyYpHwfL7q4y1i/Rn8kTQvx5NT56f7EFIZPzVxu+PPzWS0jfhz802sE6cm522bgTqJZGG+T+G/q/N7eSAJsubLKcxs3ibrBufcxUVk5W64LPdD3w9j/AMBrSORisQv5+rcntydPh3WMBjj1N1m3PsZIJuqaZyDLio490zJsubKch7shLA5y9nkrJ+6si8LLLIe7KzfwjxQ1kcZ+sskoSyHuyMh7smZ4+TRpOHFCzyHuyEtpp5X8o5CEIUHIBCEIAEIQgCJAzFxXG3Un4Vy0JqbRlqaEdR27T+jh7s/wutgDEXF+a0UuhzbJhoQg7y3xk45AV+SVn7Ot1N1S1H8GMvx43hsmMXus54BmFxJnxu3J3F2dnYmdnF2fmy2uspJcf2tyZ3e7vbkyE23YSjCMFF3ziuTD3IPxTfvpf61tBTjELALPjd/Nyd3d8nu5O783S3p/hk/dn/Srjly7835tZ2dnt5qndYozSgmt27nvguQXus8S7OrM3XmYdu9DqIY6mn+0ZYJgGSGWPStSIDA2yEwIaWzi7cWd@tLNDnFSm9qk33Ss9IwF2WxhkLd102lbR6fq889PRvPvqYY5JoaqlqaQ2CZ5BjPGrihyYtybXG/JdwR+FDvBUFBKSla+bwzLdn+F091J+FG9kT30ndP2+jNeG+Z/wCjYYRxbzQmMoYtxshZ+xzEtGlW3g0QhCk2BCEIAEIQgBJOmk6QCdS6pSgGiVwq7UqPT9371JjvX8PC728ydvIW83V12o0enCBVcmG8JgH6+fybuulr9FrIiqNXhqnOsjJ5YOD+KHH9.8vlZvn6NEbfk9CsT6g/vI/5xUUE1XUUoTVsLQTH/uhd+Det+T+i0kBi4cebebs92e7cWVwfJxtZNbfpnPXXB9/+8k/nJGP68n7w/6lQA3rze93d+b3fi6pR222ydXV8u2MU8Mo+peI2U3v9kdnedvsyi/08a9ud7rzUOw+g08MdNTlqMUEIDHDFHq2pC?DYiACNVwG3BmZJrclXQ4ai0pz3J+zxROkZf2u1fL/lml/wCo1NeoPoFdTpWz+naRPPUUW/KeqGOOaaqqqmrPCF5CjDKrllxEXmN7Dbmu4MXxZNYpMmT3vUnFOmlz9GSEIVnHBC2GB8WQp3I2WhqNJ7TkoQhYnYiuyMmUvzQgCsmRkylCAHdkXZJJAD4LGepgpmHel1u2Pf5/RKqmkgheSON5C/h6usDqqOphj3jZDO+HLpLs/ZIZ0W0NE9HPJqvvRxhUEERYg0hiLNwaPh4ePG+TLn7Pw19LRH9oSGRGblEEhZkIfrFfz7Lm09PNDEUU5tJHl8ILM9mZ+Du61uhiKza6FA9TLRIlxEhCadkbQTSTRYbRocmsmol8lUctE6lxg5Lonev2b9ibTPfpZZoWu1HD8s/6jmDIJCyFxEKfGbr8p9xRzkKN56JubcFFHK3x+eBPzQlk3FJi4ooN8cfZSFOaHJFMN8RoSZ0XSoe5DXFiooIpzqBbxF+wfl81yEIoaafBEvT9VitZOn6rJLaPfBdjHqZaLMeplbqad0U3Gt14GhdHtLtXpOytLHVaoRvvicIYYmYpDs3ix4i1m83d10eke1XZfV9Qg06MammlqCaOI6iMGDMukfhyHZ3fg3BFMlOJ7lNeO1n2mbL6HXy6bUyTTVED4zbiPMQL8GREPFvOy5enbe7N6lpNZrEFQ4U1Aze9jKLjIGXR4f1+Q25vwQL+56dTKz4svnoe2fZPNg3FcI3691Hi3/ev/ku91v2g7M6BHSSVdQU3v0Q1FOFOGZFCfTLzHwl5JxbTToU4KcHG+Tv0Lz2z3tB2Z2lqyoaAjjqcXMY6gGDMR6sXuTP8rrqKn2x7H01RJCENVUDGTjv4Yo8C/JvJAJbeT6OH/C9bl+jPejCWLIXR0G3+yeoUkVYGpRQ71n+FO7BIPFxsY+XJCnebL8bTPQ7skyB+HystEJWzTxxyZYvZ0rceao+TqG5smuCJJKSwND+SSO3yTIVU8DZuCENyQkX0CSEILiRL0/VYrWXp+qyTRnIY9TKlA82Vqf8AhT/l/wCTPlPttpqiSl0erCMighOoCWW3SUjRYMX5sF8y2Xpp6vaPSoaaMpZPeoSxFuQjIJET+jM13dfqEgExcDFiF/uk12f6KYqenhLKGII/yCwvb6MhoIzpLB+ZtsoJqfazWgmB4yKtnkHJrXCSQjAvkQkzsu22XoK2r2P2t92gOX4dHjiz8d1PvpLd3EGydfoCpoKGrNjqqWKcrdUsYm7N2ZyZdNtbqZbL7LV2oaZDHHJAIjAGLYCUsgxZY+md0uipy9tv2fmdmcnbhfy4L1+31FV0ZbPe9QnF/sakj8bP1hnmH5h4XbyWI+0fbIJN59otlfL9BT:ACXqNudv9d3eixUjxU/vWnwV8/wo5fizZcB34yeEcfml2i85wec9mVLUVO19LuI3PdxVO8Jvu5U8kQ5dmcjZvqvKTwTU0x09RGUU0ROEkZs4@N/B19M9nW3WuT7QR6ZXnHPS1UcpFjDFEQlDEc2XwQC/Ra3quhrPaftbVVMk4VEMAG7uEI08B4/q5SxmT29XVEe258cLs67T9kNpdRo4q2i0uaanlZ3jlEeBMzu12/Yhez0/wBs2qQ0UMVZQR1NQDPnOJbvLi/HAWs3DshGPkLn8I+5IWe89E3NuCKY98fngH5oUbzmlvPRFMN8cZ5NFBO90t56JEfomkTKVx9SmdChjQ5uh8lwXqiklDyF6KXlL0SNFEcvS3zWN1ZG9lmmPxxfKKF/Ey0WQ9TLRJKxarUY8LIcFXBLF0cUnHHLMYzpp7V+hXBdRtNogbR6HWaPvXh95EcJbdJgQyA/q2Q8fRdrxT4pRX2GpP3fqsdnw0PYttJvGE62iGO/XnLe3oO6/wDK9LtZ7KqzVg0v7IrIs6CjioJPecgzGHpk+GJ8fE92X03itH5MhphGfrK1wfLNifZZX6HrI6rrFXCW5.IYqVzL9KBQ+IjALNib8vNeA1DYqnoq2elDaPSS3RkHjmMT/6xGI8S7tk6/RVXn7pPu757s8Mfyv8A5r8ne61P/Bk/wv8A+lTVBCTlfB9d0X2QaXXaXTVcutjMcouRSUeMkD+J2+GZYu9uT3bmhfMaeLVhhHcx1WHG2AyY8/KyEiz9W7skyB+HystEJ2R445+zj4vxSZuPNWfn81m3NNGcklJAh/JCH8kxLiWAZknTbzQ7JHI0+uiFDrSyiyDVEJOqslZBSEPUy1Hmsx6mWjc0IjVg5JV0zkN42YbfNQQ8UhdacCHlxSsy2PtUZoVEPFJJMU9OTbfNiV+TJMrQ3lAtN077JXST7H7NVMxzzadFvJHcj6h/@mXeYt3VYt3VWjPbLr9zjUtBR0cAU1LAEUEbeCMRbhxv/FC5jMzISK8f2NCV0XSLsh+bpK7N2RZuyAwZqSvdbWbsk4j2TQpZ7MkOy1xHsjFkFQtJWYWUuy5GDdl449qdSDWaqh9zj93hebDr3nwhIhK97WLH8KLLs9PZKy8eG2GqyUFRUe5xb2I4xF/HhY8+psr/d7pS7YanHFSF7jFlMDlJ1tfxkHg48OA+qLHvR7AebLS3Fea0/aHUKraAtMkpowpspBy8W8FgYrOT3txt2816jHigpSFZNnTsiyQi2fJvnxupTVs3BInghPyTsiyaWSZv1ZKadkWVGFDYnZCVkIHcvkuyLJoUmlCsiyaSAoLIshCABCaSBgpwG+Vmy5cuKpCAs6rWKOomo91QNgWbZ4WG42f5edl1Mul62Q0vjLKIeebXF8ndr/Sy9WkmB52jir/ALaMpZ8o7nkGTdNnxZh9OC79cGGCMa8i7OT/ALf/ANXYpDsmyLKkICybJsmhAWCLITQIVkYpoTFgaEISGf/Z$/9j/2wCE?gGBgYGBggGBggMCAcIDA4KCAgKDhANDQ4NDRARDA4NDQ4MEQ8SExQTEg8YGBoaGBgjIiIiIycnJycnJycnJycB.gI.oJCw@Cw4LDQsOEQ4ODg4REw0NDg0NExgRDw8PDxEYFhcUFBQXFhoaGBgaGiEhICEhJycnJycnJycnJ:BABEIAHoA+gMAIgABEQECEQH/xAC)CAgMB))))AQIDBAUGBx?AQIFAgMGAwUFBAoD)AgED?QFERITIQYiMRQjMkFRYQcVQiQzUnGBFkORobEXYnKCCCU0RFNjg5Ki0eHw8REBAQACAgECBgM))?AECERIhMQOBE0FCUWGxMnGR/9oADAM?AEBAgEAPwD35YippeK9RN7+UU596aIv4f5xJXc2ReFlFRGvlvCz6X6rD0hc1i2iOfpFZubRXmuAqvVURVg0XLtkKaxFXIoJzBB/vEg/x2hEaWhWLMbtche8BObdYwW380PqiahJ+aIiRA31vEV+Phmi51hkaY9YwFeWAXlVd7pCS4sxHStii394aEaotkyXyG9v57xjtrvdFukZTSbw0bitFFjI8kjyKrHxhXvihUOFKNxK7Q5OWpzc/wAjATHNdpshxMm+ure+Xl0js+HqTXOFJepVDivio61Jg1rd9LDLDLAzmbp92bmXL/SBF1UKOWP4m8?7KsfP5XOc5mNyt/1Cxxb/wA9o3lXrdIoLDM1V5sJRmYeGWYcO/O6aEQBy+aoKwjZsEYVSrdIo78jLVKbCWeqTyS0iB3714lxFsffmTrGFVOMeFqLNuyFWqjEnNMMpMutPKo90S4ZdLLctkRN4NDbdQRzH9pPAnyf5988l/l+elqc+pqY54aGOrlj5YRvaVVqZXJFup0iabnJJ2+D7S8vXf3ui9UWGjWVBHLh8S+AnKt8jCuy/b8tPDn081XHDXx0cr+Wcbio8Q0KkzstTqnPNSs1Ni45Ltuqo5A0ik4WXhRB6rdYNo8WwgjUzPFnDMnR2uIJqpsNUp/7ibIuRzdfu/xeHySMOg/EHgzieZCTodWbm5pwSPs+DjbmIeLkeAFhlwdHDjyalccyNB4946/amtkxTZY5TsEtMOuOYd2ep2Zjn/XAY7Ku8QSNU4Brtc4dn0eb+Wzpy05KnzA42w54SHmAxJPZUgPg6eHHGcA1oW/hxSK3X5:AHZXJufnHV/GXM445Gw4f4+4P4qmXJOg1VqbmWr5MYuNHy/UAvAGQ+43SAcXRw4IIAw8F3X16xBR5lLzVERf0iauJECJbdLr6dInGPSyWIuLukBF022819ILr6Q0aCvtFe4CiEuS23L1ixChEiQHipeMeW/kqElvVF2ip5xckH2W/pF5AMVkERq/CMZSWK7reLjDdNlW/n5frEFRcvDy/iun8LRXtlYYseYfRkdT3RP4raLwNMViD7TLoYPAhjdFx903RYY2tbyiO10xZDTg25U67xnS5RqxVIzJd1LJvtBtDLF5VU+H3+JfjVVJGXq87RSbo7T/AGqmuqy6WJsBpEQ/Que6eqJHcVWhv8PfDXiWnP1Sbq5/Lqi52yoOK69zSx8mfpGDXvhpReIq65xE7VKpT595oGD+XzDbAqAW2+5Mt9lXmjYUj4d02l02sUz5vVZ9ityxScwU9Mg8TTZg42RS/dDiXeL5L0SJbY9xrgAodIb/ANHlx4JNrVele2Ou25yf1/vc/F9P8NukXfEN9x/4V8AzcweRnNUd590v70k4RGXpvHo/7FUj9i/2F1pj5Zodm1sg7RhnqeLTw/8ACJ1DguhVXhJjgyeR12my0uxLMuZpr/ZhEGnMxHHNMd+Wy+loNwarkPi0YftH8O28uf56wXX/AJrEVPU+Sn/j39tYCY7NRBfY1Eyxd1cM/T642kv8H+Hm52l1SbqVVn6lSZhqZl5ybmkeMtA9RqXLUbLuh/uYr7x0o8K039rj4z1X/mJyfy/RyDQ0stTLHDPK/wDft7QbharguDaRSv7XuOfsTP2cZXQ7seTXbE3cLp9fnaNPwu+9SuCPij8tux2OoVLsun+65NPk/wAIilvS0eq0zhWm0riOr8Ty7r5TtaRkZptwg0h0BQB0hEBJLp1uSxXQ+DKNQWq0wwrs0zXpl6bn2ppQMcphFRxsMADkVNrLdfeDYeTU7hPirjL4fUHhqXo9NplHMZeYOsE8jr5D4ydBltscXDyXLm8433xGo1OrXxK4Eo9Ua7TIutzes0arz6Yag5f5gjeSPwlpNMeDsFerktTmnNVqkNT5DKDv4cMMsf8ANf1WOkqfClNqvEdI4nmHXxnaKjwyrbZBpFrjgWqJARbJ0sSQ9hwnGlNp4fEL4d0DszTVGaWccakhDFjNsMw7vweIfSLJ4GA+PtI0BAf9RnqCCJ4tSZ8Xvj/KOx4v4KpHGbEqFQcflZqQc1pCoSZo1MMmtvAeJbcqX28k8419E+GNAoVfl+JpeZnpiqMsHLvPzb+t2jP99MEYZk59OxIlkTaAOc4L@Ga+K/H0xMyzTzzBSmi44AkQajZZ4Zfi840nCwAxwp8XpSVFAp7MxV+yAHg+4e8P+TCOzqnwop1QrdQr0rXqzSpqqEJTwU+aBhs8Rwx5Wsv+68buncDUCk8LTnCNObcY@9l9mbdyQnz7S3ouPE4aEiuY9FUbJZNrbQB49Wnpr+yb4eyLLYvszlQlwflXCwbf53SBl07eAi67e/lHcSHCnFNZ46pPFtdp8jQ5aisOtMysm7rvPE6Bt944IAOA57J/7jo3fh7w7McIS3BU2L0xTZTHs7pmnaAMciF0XGxCxpl+G1trRXw5wE1w9PDP8Az+s1U2wVtpmpTivMiNsfusR3tAHXQQQQE1okthI0wUkRcF6oq+S/lDJzHyX9IqN7vVbst0S97bb+8WIiOJYr/otli1jaGKEu6/pDW1oZWiAoF1xX897wDRoKEnSEvWJJfeIEq5J6QjkRVvmU7r0Tlvy7edvWIrEkNclSxbr1Xp+@b5dNrdfeI1dgqJUikrxcaLdP/t4WMQ0ysKxiRYrLKyYpfeMkwXyWy+sYs64rEubm2VvNbJ+frt7RFdvoKq2veyJ1i9kksm+0Y8uSTDAnt0stlui+tl9IuEMU/KFRuXtli5GWLmyflGsRVukZwXxT8ohl0hpkakSzimJRC5I3S3OHlFcStC51HpPKHlEUhw5lSukocRSJWie0bDiURtEonKiIcKHEiEOFDhgQQQ4A1pGkIXRhq23dStvtdfyinQC2IeH2/jFvSmypke/tFIoGaiPKpXLbZV9VhqS64saR4kCnr7YIqKnIW97re6RhvagVmT27opeYQl9.mSH+SLDiNbNLCibxEi329YrdFHmybv4xUb/mlopBp5lAauhNCni3z/APVoSXt0yi6RUCn+8tfziKkWSb7b5XjGScF8nOzpqE26cuZXTEDAUK7nmidE2vC0nMpGS62jlyTxYkI+1/8A8iuWN19ht51tWnDFM2iSxCXv+sNtx2wg4oE9bvdNVxRfLHLe1ovQktEbFmOSohjk+MnGG5VHXSZGZbEnJTtLBu4eROcidE9FS0dTNTYSrJPG24707pkFccK/4QGPGqtMDWJ6aL5y5KSLBOuTspPTam5ldQBgW2u7/wACWv6rCkTyz6ekUyfQJCXwljc5AzGUbuCKSdRG/KP9I3aito8q4b4sl6OzLdrOb+XZaPbmW17E5kg4uOiaaouet1t7R6kUwPZUmroTeKFkF1RUXpbz3gywRw9XrW0wjOBOVPyjFlrugJbXsi+0Z4jskV5Yn8QkiaQ0SJJFdxK5kkSSGkNEhcC5FEkhw7Q5geySGkO0O0TmJbK0O0OCJwCCHBDIocEEMCCCCAOfbaqgzxE4432DHwXLVz9PC;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@OYEKgxhqBYiwL6cw6qKp6RlNS0sLThCyGRoqlyoirsvXaMHhmRkpWmzL8rLNMPEbqk40AgSra/iFLxZbPypm/wAPPeOKjR5OkzrDN/numLbc12BS+zNf7STBnyC36qv1dUjx+kTUq3PtSdJlZft2rqtzVXeb0BER8BARdnyPfm6ptjaOp+I6qWLheN511x4vMzQsEI181x2uvlHnzzTYTaIICNjTyRLbpBfPuWM6rtJMZD9pHHuYH23gzaeA5iV5cdVgwzecxH8epjbePb5CTYNqVe0QluzAuUkyKaPMiY45dMeqLHlzwjIvsTUiKS0wrkuusymmd1G68wWXePTpQAOXpLhihHMJaYK27iYFfUX6v1izJW2z8q64o4KWP1E0vOA7c3rv0jCqvCzVQRibl+6mJZcmnABDMhsokBE7z7pe9i380WNlw2ZlLFzLt7xubrifXZUtFdzq/hHmNQ+HMhNAx2enjIuNKQu4ER59MSLIvF67JGXJ8Ay+WbqKeyJzXQlsnr7ekeiukSX3XpEBM8fEvX1iCWo19JoTNODBnlGyZe/5+UbsQH0igSLbr/GLhVdoRyROCFFaKuUBrYIqFV9fOLYAIIIIAIIIIAIIIIAIIIIAIIIIAIIIIAIIIIAIIIIA/9k=%iVBORw0KG;)NSUhEUg?ANI)wCAM?ABTy9T5)GFBMVEX::g/dZodGSYrJDPz8+o2pXD/6wnJycNREam?ADOklEQVR4Xu2Y0bLiQAhEbZjE:/jdTM3l+gJMjW1+pDafgQKu0Fg9PbP0Tpu10G7d7TrSbpdB94V2YUkWZfk64ZLSLp3LCHpKqPUFelKo/QFSf9Hqbkl5q0H5u1ro0Q65GTm6QxYj3oQR8xmDVijHEIn/sam+gAdHgrvPqRNotKIgIMGYNURnqNjvyKMfBgliw+Wji0CXKBB1ax8obKkE4V4IbXodAb8t76KjYUOxMQINAKxJbgMlZhqOkFmCSZ7GrFc9kxGUATGSkYJWyKWIUwhqaYTXuIpiZ+TQQP8rz1q90Y2rxMyQ2VJh17z5naMOvnSsG7htWXt2JMeqai1ZnvcD0JSSD6YBMKjdKJ7t4fD8K2JCh57wUbbumM5chFGwPe4YpSosqYT3ijxcvzck1kxDy74xu+5z8vbwhzgKOUqSzrdixKfSHII35AQxVxUb9b5USKd8Boq7IfSODLsLjZJUFm9WSlXmcqCDvmwwkK5OhQZ9NKkYwnCUr5Z29Ao5XQC5CNIAmvlPxfWk31RvFmZJh8l0snb3QGTihlAyRRvI7RjPE1iKvOwxOPlYp/NN5jhkq7VKLGDmammU2/OLIoly587qkepPrR6Q3picyKKfSY4eeOjpGxhlHRYCPJnBdFnIBbs9ChRZd7Qic2J3LUk87gYbMT8oa3p0EsTc5NLwB7wBSe9lKThQ0s6M5vzDlN62AIkPr4dMlNBZ3xzCiZwoSR2Qh85tGEvN2e9eZgiIEmMrLdDfTlIZ2Zz+rik6f9Zyb99/dCOS2IjGInXf1zw9cuHlsUkSKWWFIrYjLFRmj60QcZKSfgvJ8uifSLQjJqOTx1akgl/VKul2hNJUUrJ7pA0Pkrzh5avB1+W1trPY9xy7csD7syyJ+kcPntombt+iVOSwY/aAxNvVniHRolUCUecU1JeGJt9s3ZMjFLdJpde4hskS8p6qI+9WWka1bQw3sPLXS57dto3Dy3RLPttoXRgHH57+qX1oUMb0Pr+ddDcNkZm5rscSrrJbQvyBf6eJKqxOYWolA69SvkzKk1EFHFI+OJDliE6yA3+iBoVJakKE53hySWtI5IKlYOQdi2qG5oIVrg+hD/bvHCzY60hI)ABJRU5Er@ggg==$/9j/2wCE?YEBQYFBAYGBQYHBwYIChAKCg@ChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSgBBwcHCggKEwoKEygaFhooKC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KP/BABEIAHYA0gMAIgABEQECEQH/xABU?E?gMBAQE)))?wQBAgUGBwgQ?EDAQUEBwcEAQUB)?ABAgMEBRESEyEGMUFRBxQiI1JhkRVCU3FygbEWMmKhkggkMzSi0f/a?wD?AB?I?D8A/VI)?MYk5mMbPE31AuNgaLLH8RnqYzoviN9QZwryJARdYi8bTC1UPjT0FxnC7kZxpzGYUc9DGf5m2EmylOm1yGTlJUa7y3T1jH3NeqNdz4KYVDR0Tk1LQAMEQ))))ABz0mdd+5fUjqJ1yXar6nJ9pL4E9TWWudJGrcKEuA6fVnX6oW+sLzX1MZ/mc3NUZqm2EnyUOjn+ZjP8zn5pjMGEzknRz/M1z05lDMU1zF5mcJnJOhn+ZjrBzs1TXNGE2yDpZ/ma9Y8zm5prneZnCbZB1OseZjrHmcvNGaMJnIPQ0VrLFcyftR/2h3YpGSx443I5vBTwGcWaG0pqOTFE7s+81dymjoytPQYtWaKe4BTs20YK+Pu+zIn7mcULhEclzHMXC5Ll?MGo)?AVUbfiVLk3qpxLR2hp6fsUyZ8n/lPvxM6qSRxPlW5iXnbB4hdobQ1VJGJ5IxNAb5Slv2dLzQhNw1pJgJjqqpoCXAMBg1xEVwJsBjCDGIhNNSxhI3NMmyOK95G4mehC8yhK00xGuIONFBsbYhiN?b4jKEaG7QDsWOxuXm3d41/wC7imiHpqStR9zZbsX9HnLHT/bO+tfwh0mkT01OVVNR7lRTvA0g/wCCP6U/BuQnLABTqrQigvRveP8A47vUzvMtYr1uahcOXXWzBT3ti76T+vU5tZVz1N+N3Y8LdEOe9hI1hfho275DS0a+prL86RcHgbo1DnOLcjSs8mQ67GtalzUuIgZANjsMaS4QxNEJmtNFKTnEaMM4CW4zd5GLyPERYDGAmu8jFwvGIruaRPaWnELzKEjXFSQrvLchWkNkLLFK5GettiwWy4pqJEbJxj3Ivy5HlJWOje5kjVa5vlcqBrkduNYZ2TJe00ABkmCEjSNCVgBage9qdlzvkiluNz/G71KcRdiMEElx66j/AOpB9DfwR1NbFDxxv5HHWsmfCyO/CxrUb87iMgwnJSm1vcWKmrmnv1ws8JVuNwblhqI1NCJzSvIWnEEnEyhMxSjKVJC5KVJCRC4zcR?G53mcCZCKMmQjU57jZEABgjBhUMhdwBo4geTqQvMoSNKshWkLUhVkN0LbD6Ac+1bKgtBnb7E3uyXa/fmh0AVkU84x7mLiatynzu0KCegmwTt+l3i+RVPpVTBFUwuinYj2Hj7ZsKWjxS098tPv+n5/wD0mbJfvO1TVrZey/RfycUlYRkj.vFqLgXISnEXIjUgkLTNxKhEzcSNNCo4y?amruJXl4k7iCXiZQkYUpipIXJinISIXWbiI?3O/GTIQM4EyEanPcbgwhlDBGAbI13hX0MpFJ4HegMaEKkTy31eb4T/8VMdUn+E/0CKbI9qcTmyIVpDrus+p+C4jWyqv4K+qGyOQnbOxN6oeqABXOCAD51P0ybIfqaCwKWprK20JqzqDerUr3R5yKiObjVEb2cSX3KtxlEvNmtV249Na9gMmxTUSIyT4fB3y5Hm8h7JVjex2O/8Abdqea6XOmqXYzav9O2LYrLUtFlMlTJmTOZvXSONrWqrnXdrhonEpdL23O0fsDo6n2Zq37P1W01TDFPmUzJZIcxrOz2091X+SrdwJGvOjBVSsbc5L+R7tkMjXo1zHYvlqp0GUVT2e5f2l00PknRptNtbV9FvSJn189s2/YlVV01DU5SZvZj91qb1v1RNeWpxP9NH6mqdtfaFs1O0fVn2c/rPXY53UzpcbVTvJVuzONzW3InHnlXEjqhzkVbtx9xse07FtG2H2bRW1ZtZXwo581LTVDZJGNarWuxIi6XK5qLeec2P28orc2X2kt20+p0dFYdVNFN1R0knYjYjlvxNb2vpvTkqlDoW2Dm2NtXai1rcpKOO0rTtGV9POx6Pk6q92LCqpwxaqnyMbD9GbLD2F2q2btq0WVMe0FVPM99Gi9y2RiN0Vyb037vsakCucqqdbo823g26oaysorAtyy6KFrHwVNowoxlViVU7u69HXYdblXeh6Y8t0b7Cw7BWdU0sFv2zbGdHHExlbJ3VOxl6okTPdvv114JyPV4TKG8e40IJCxhUie02QnapRlKch0JWLyLNJYc9Tc6XuY/5Jqv2NtE3ljOZGnaW44NwPZJs7Qpdfmr54gYzCH2hD5+h00p4fgx/4obJFH4G+huCucTEvMwjU5J6GQAY)))B+ONgrA2ki6a+u2Ns2/I9vVE2Ktop2x0dM6TtuxOXLxKzdde7z4H7HBkkjkwX6HgdsOiTZPa7aL21bVLVddfAlNLk1T4mys/lhVOGm/cetpbDsulorOpIqCnyLOjbDSNexH5DWtwphxXrubdedEA1xu5mEY3DhuT8HPraebXvHvj/?dEBDLH4VvOFlGcs6D4u27TibRxpi3IbYiznHOyhlKdXAnJDOXvGI1zzkZRJHQPl/g3mdSOFjOH3JDGIwtQvulamooafXD2/EWQDW8rucrlvU?G))))))?ADXCDYAy?D))AB/9k=%iVBORw0KG;)NSUhEUg?AL4?ABBCAM?ABYbu5j)MFBMVEX:/+1wv+jqv9siv/p6:W3f8zZv9gb:19v9NK/8zAP999:S:8z:8zzP+z6P/0gInF?ABg0lEQVR4XtXXy1ICURAD0H7c96D+/9/KQqkhlEKD0iTrWZzKYtJXbou2s+jvn1Q55f2mfAMOb6Ec5D6+c/ObcvOdm98qN9+5+a1w842b3wo33/6Dv2H22g3zCL+PKF/uSKDsGL8pN9+5+U25+c7Nb5Wb74R8h+ki41eYLja+Qf1k/AL1k/HF4XIg4ytMFxl/X7/z8aF+Ov6A6bqR:FTnswXa2B96LmyPZtfoH4yvsDlwMaHy4GLj/Xz8RXqJ+PD5UDGh+ni448O08XEh+lSrtUVnC6qm+ey/krGx+li4+N0sfHh7Cfj43Sx8bF+Mj5OFxkf67c8frF+jJUovzRIBr/4+kovMb5YPr/OdcrUGL9k8FG/Tw3xxbP55/o1R4hfk/m6IBbii+fyJ/JnjK+5/HWRGuJLfzG+xvh6lX89f8m3GH90ar7Ya/FrkF8y+XNhRpAvlsi3+H8fUxP5A+svYb54Hl8Uy4/zNZEvCvo4XzyRLzrhXg7zNZMvw/o6ptsQpvDnE+wJyVGQ5SG7)AElFTkSuQmCC%iVBORw0KG;)NSUhEUg?AG4?ACCAgM?ADasxWR)DFBMVEXZ7::/+VlZX29vYl5th1)SElEQVR4AWPACZj/f0DmjkqOSjKtQgcLyJccZiEE9SOmP8mXHEaBMBoIo4EwGggryJccvvVKKAogTnJUclRyVHLklgmjkqOS?LWyrsxEHLD)AElFTkSuQmCC%iVBORw0KG;)NSUhEUg?ANw?ACNCAM?ADrVuTh)YFBMVEX::4x9v2s9D85e761OP97fP++fvEwIH0msH+8/fe2HbRy3zq4XH71I6VlZWhoZq9vKWxsbHNzc3PzKXi4uKxr5Lx8fH28bD4+Pjd2anp5a3/+rP06HCa9NH/9Gj/9429Bui2?AD/0lEQVR4AdzYa4viMBTG8bwr1OE5J9dexul+/2+5GGZhbepYY8Rn+n9hQAj05wnWal5REkmXNYgzh8sBWWWB0RytUWxGOag5Xi7@Vjz3j5fkfq8+Ly8r5fidDowTubj4gZ8/grcMHnVGKOqn3aMI2bcJL8AN6ngqujnPTiv7Lghy4rED3dx0XPjBsWtxN/DYaLGTYIfkpsXn+EzZmLcoLiT/oTzGHhxg+Bucfv6ccGpfNLisq1Sl0cqkQlXYQO2BAM0v9DiIna2QZgvb3penMfupsIWIaqyH4f/+3qiP9eZ7RL2J+P1Vot/2dHsqhluPbntLB7Irv5iQKGjwgU8VLi50xLiLFA3ulEKNxsuAZWjc4WbDueAutGNWCd0OIvK0TkUseESUDk6yz85h8dL26cSyoazeDx34w6S2HCoKB8/3TCT4RJyFV8pglXWsOEcarLFp7L/t+VXERkOyYTSRoezqMoZVz4tHAUn643BHAeH4oGAESeoa7XP8ePq0yPjLCXOEkyOHecoce7IuIAmJUpcQovEUOKMoEGOFKdoUCLFhSZ3ORpc+3MZaHGuweBocO1Hl+hwQa3knrY5Q4ZLFq1S86bWuOW7s6BVcXmu9rjY0EaHQ6u6hQ/XoU39Qohb+oink+68EOJy54++P526rosxijwKi6ePJUeJKztfuP3pG5zJcgUSiTF23akvJsaB4+tvu3WX4zYMAwGYpH4wfmhP0Pufs6VKrdiFoZdULjadeXAUmA73A1aUiSOOOOKI+zK47zl4IcdwL+Rv4YgjjjjiiCOOOOKIIw45xBFHHHHE/Y84HuLEEUccccQRRxxxxBH3ZIg7hWsKmJX3xBk874kreGNcBdBi/ZY4+ZK4CkANsCqe6/e6iwiA2tRgGHFfUYzKdNcXpuOZq/qzxeuqGeJ3vMG4oX010Jp7ncRFdG0vWBNBZOFmrfV1NxYpVcQQsfFQeqwhkns9gEORPpqZX25wF2Z0h4OIYqZJvWfnXkdxpY8P9av1OUGCph97Tr1Uun/0ddcfbNIwfqdrGqtteEaDS4pXyxX/Fb3kXj9O4uIsM7/o3FB+sdJFconG31zibtSG3PfR+Br5wMksKGvwpl7fzuJCMIbAr0xcTdNyMha9LsHnoqqGkZobIA3e1esxXORVnCKyx0Wex5UXcA1j2tcXcAf3nGTL7Z7b4nzdY71wt3vu/CEerTXmoQNKxt1Pyz3uusWtaZl7PXPOlfXlBpfPuS2uzCPMkRmXzrnc66E3FN3h0hvKHrcIQPkT19JJ/xwu3i2LGmBW6x1Oms7KPa6r+Y8UtU+49W6Zex3FSWvyL3MW91iII46450PcPsQRRxxxxBFHHHHEEUccccT9BMmBXcwVjbcY)AElFTkSuQmCC$/9j/2wCE?YEBQYFBAYGBQYHBwYIChAKCg@ChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSgBBwcHCggKEwoKEygaFhooKC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KC;KP/BABEIAEoA0gMAIgABEQECEQH/xABd?ACAwEBAQE)))?QIDBAUHBggQ?AEBAMEBgYHBgcB)?ABAgMEBRESEyFRBiIxQQcUMmFxgRUjUlORsSQzNUKh0eEWF2KSwcIlJzaChLKz8f/a?wD?AB?I?D8A/U4AqgqAIMAiZhX?Bw8hVcB5W6fiMinju5BkkwjMa7gXDHjn3Axz7hKwFRsuIFxDH1g9CB1g9CBhqANlwLshj6wrQgsdVOBAw1AqNVwLhjx1aEDHPuE8MFRsuBcMeOfcDHPuBYYBtuBcMPWD7gFEK0IGGYiY23C6uQ5xOq0IbU3WlkXAI004hHUWVF2gz59wuLgQgYaaiYAgCImGFzAEfE?wBADAIVBUFAUCAEowqgUQQYBTEHun4jnuq3zHQebNZHmXEc99pWKrMhY2ImI3AuEcM9SBhnqQuoEC8O4V2HqQsQg68SEjDFiUnoHh5dovCovJG4WfIQU0WuQgCgzrSrQxXcNREVFJ5U5jIaD1IWcQB3AuELT1IFp6kGAO7MNKsxBBevTw4kOglKa9lPwCUEJwZFvDZblxEIcizyIaaZDKs8xKgz2nxqNJcCFbhFXkLE8CETMBEGAMAiGEEfESETSdQwBVAC09Q?E?ABiK+QiJL5DkbQTtqTNM3tLeefM0ttp1KnPzISIhWfEdOmZjDEuNpibL03q4JrmY4+FtLNu241K4f+Decp4:Av2OgLVdYdiX3/fKXveX61FiSIjzMQUnUx2bBC0cT0VO5b9mxyYtn3MR/Q/1IWS2fG/MCl8whFQsZT2rkiYrNB8jHSEkiS0hJSCojUxqQorSDWW6KUpMSqqnEQFhKOgidqK60pQhRloLbQYeYkRiJmZiqhaEChaELsPxBh+ILggmUIuTulxGy1PskKmUdnxGm0QUGmoSaaENOQz2i7QQMWpMwzpoQkICYiJhg?IT))AgCIBKhAoQYBXzIecdM7htwkt8Xf7R6VaPNemts1wUtt1d/tFzHbIRMuY83ke2k0lDhdWjHMP3ajuT8DHosk6QoiaWw6Jcl2OX2LF0JR+B/mPC30KxT8R910T/AOq5fn98/wDqY3OtpoaqCPEeq+i59M/tKOKDZ9zDF8z/AFMc5cqh5TtdK2YUl76DUpS1do6nmPQrSHyE5NCtvZSlJlutHdnmWZ8RivBaY7i21eyfwAhs/ZP4DpWkC0QvEcMeUyZ2abVzKN/xtctwXPVwzfa+Zf1H0swg46VbIzPrMc7FRCUqWl7NNpULLj4/EZNo5RslMFvxPpGH;3O5xp9PaLVJ8T8Mxi2YiZjNejWb9aNx9SErQ0pXaVRJHTvoLtNMhId/YRbsXspAPvKW44sl7yjP21FxHF6OYqIi5FNXX3nXFoWdqlKPLd5GNWwG0Eqg9jYZuLjmGXofEvbWsru2oyoXHhoMvRW0v8AZSaurSdji12+SAKyJXiCg+c2CnM2XP4JcwjH3oKJechk4jqlbxJTr3rSNHSNNpp6di/RkY8xDQLbeJhuKTvKPu5734DLKodbfR4uZMJ9fATTHT/KgvmL4tKo7Yedzl1B3x8clSdbEqyL8TLyFuV9fIFB29tZhGwfR3KIuFiXmolzBucQs7lVaMzrz4jX0dTOM6jN4ecxC34iCViXuLNW5byry5+YwbeJ/wAspD/x/wDxUOfto89JJgtcO2akTaXIZ/3bpGf8pfiKyK5NveYKDHsrOJ0/tjK+uR0T1WMudwsVVtty00pXVA+x6RY2N65JZXLIl6Gfi3t5bSzSdtSLly5+Q4z8B6O2/wBlYX3MEhHnVyv4iraiaxX7z2nYKXvzH0e0XqWa1zI88iOlDXpyDPeUWXIMdzo+i45ucTuUTOLeinYZZYa3VmrdIzKuZ890xzZsU1m3SRGSqEnMXAMJaS56tavYSdLSUWoySKbRf70ExMbLIiW9fbw8N2vslQyqRVqaQpvKoqa9K8czBTF6XOYKVYzVeBNoyyMvmFr4AHTlsVN5DtrDSOYTJyYwsW1211uTW7PiZkdU68BOVT53ZuezeWz6LddZQ2cRDOvLNSlJIq2kZ8zLlqRjBsHAqhdv5mxOX3YuYw6TwH3VGdyeFc65mnvyzF/TVAsuwctibPX4pt3fw0rT4/ML75I7g+Q7PRyuYzCGipvMoh/6S4eAypw7EprmZFw45F4D7IVQkO1.rUPDoJDTSSQnyFozLVcdRI?AEQ)YADFNpXCTaFOHjmcRH4p7yMbQAI9ADxzazoxfavflJnEte7++X5j5/Ylv0JtLCxEalbbbKjv3T0PkP0GONMYKFdnUIt2GYWsyPeU2Rnl3jSmIPsqEaDknGTvaH7PbOWS/wB+4XrFeBfl8R15Js/BSn1jSVOxSu0+4e93+A7AQp+QY?AIAHBid@DEvYr0uavr7SklXwI6DtQsOz.6GIZpDTKC3UJIWADuM+YBwYjY+QRERjuyxrEr901JI/IjoOw1Cw7MIUKyyhuHttw0ZFTyFwAXGfEwDnQMkl0DAOwUNCp6q6o1LbUZrJRmRFzM9A4iTS+IlpS9yFR1Ot2EiqM615U5jo?Ac6NkkvjZcxAxUPfCMW4aL1FbaVCzI6nkLYiWwUTgdYhmncD6u9N1nDXwIbAgZgGGJlEDEzNiYPM/TGU2tuXK3ePKtOYlByiBhI+IjYdj6VEfWOXqO7OvM6F5DYJAzAMEdKIGOjIaKimL4iGP1S71JtzryPPPUCJRAomy5ngfTlptU7erQi4VpwIuQ3gAGOeuTQHpZMzwPpyS+tvUWVKcK0PLuDm8ogZu023MWMbDVcnfUn5GQ3g)AC)?P/9k=!