<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Tam Nguyen]]></title><description><![CDATA[Thoughts, stories, lessons and ideas. SHARED]]></description><link>https://tamnguyen.io/</link><image><url>http://tamnguyen.io/favicon.png</url><title>Tam Nguyen</title><link>https://tamnguyen.io/</link></image><generator>Ghost 4.6</generator><lastBuildDate>Sat, 18 Apr 2026 21:38:45 GMT</lastBuildDate><atom:link href="https://tamnguyen.io/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[The Week AI Broke My Confidence But Made Me a Better Engineer]]></title><description><![CDATA[The week of February 9th, 2026 was the time when I fell into a quiet existential crisis. ]]></description><link>https://tamnguyen.io/the-week-ai-broke-my-confidence-but-made-me-a-better-engineer/</link><guid isPermaLink="false">69b5ea670b9e76218bc2581b</guid><category><![CDATA[ai]]></category><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sat, 14 Mar 2026 23:10:13 GMT</pubDate><media:content url="http://tamnguyen.io/content/images/2026/03/1_4Q827QtapR4cR22PgXp3Bw.jpeg" medium="image"/><content:encoded><![CDATA[<img src="http://tamnguyen.io/content/images/2026/03/1_4Q827QtapR4cR22PgXp3Bw.jpeg" alt="The Week AI Broke My Confidence But Made Me a Better Engineer"><p>The week of February 9th, 2026 was the time when I fell into a quiet existential crisis. </p><p>I was fearful for my short career in tech because I witnessed first hand how superior the AI models are at coding, and I was increasingly spending more than at prompting rather than coding manually. Models were now writing code faster than I could. They navigated large codebases with an ease that would take me hours. Increasingly, my job was shifting from <strong>writing code</strong> to <strong>prompting systems that wrote the code for me</strong>.</p><p>I remembered the whole team, including my manager, were thrown into frantic mode as we didn&#x2019;t know how to react to the lightning fast changing pace of our career. Managers started coding with Claude and engineers overloaded our internal channels with posts sharing their awesome AI workflows. Everyone was trying to figure out the same thing, and that is what does it mean to be an engineer when machines can code better than you?</p><p>Ironically, I had always considered myself an early adopter of AI. At one point I was subscribed to three different model providers and experimenting with every new tool that appeared. I genuinely wanted to understand how AI could improve my work.</p><p>I have always been confident in my abilities. There is a smirkiness in me convinced that I would always be able to adapt to changes in tech. Adaptation has been a requirement for the job. Doomy news didn&#x2019;t even fade me. With the onset of Opus 4.5, everything changed. AI could code better than me, and find code pointers and understand the whole codebase faster than I could ever do. I now started using nvim and tmux more and didn&#x2019;t open VS Code as often. At the same time, my productivity skyrocketed and I was shipping more code than ever. </p><h2 id="a-mirror-to-my-weaknesses"><strong>A Mirror to My Weaknesses</strong></h2><p>This brings me to another revelation, I am a builder, but I have never been a good executor. I came up with good ideas, but more often than not abandoned them midway when a technical challenge comes up and my energy is consumed by a full time job. My project only get as far as building a half-baked backend and clunky UI. They usually came to a halt after I purchased a domain name.</p><p>With Opus, I could focus on strategy and intent, while letting agents handle much of the tedious implementation. Instead of being blocked by unfamiliar tools, I could describe what I wanted and iterate quickly. Its strengths compliment my weaknesses. I am no longer constrained by my knowledge and can move faster and wider than ever. &#xA0;I am now shipping more code in the first two months of 2026 than I did in the whole year of 2025.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABhwAAAG2CAYAAACESCzrAAAQAElEQVR4AeydB3wUxRfH3yShizRBEUEpIk1FsKEi+ldEEcEOigUpYi+AgCBd7GCnqCBYwV4RpIsCCihFBAFBmiKIilJDyn9+k9vN3uVmcxdS73755O3OvPfm7cx35/b2ZrYklK1QJZ1CBuwD7APsA+wD7APsA+wD7APsA+wD7APsA+wDMd0H+Nuf4x/sA+wD7APsA+wD7AN53gcShH8kQAIkQAIkQAIFTICbJwESIAESIAESIAESIAESIAESIAESiH0Csd9CTjjE/j5mC0mABEiABEiABEiABEiABEiABLIjQDsJkAAJkAAJkAAJkMAhE+CEwyEjZAASIAESIIG8JsD4JEACJEACJEACJEACJEACJEACJEACsU+ALSz6BDjhUPT3IVtAAiRAAiRAAiRAAiRAAiRAAnlNgPFJgARIgARIgARIgARIIFsCnHDIFhEdSIAESKCwE2D9SIAESIAESIAESIAESIAESIAESIAEYp8AW0gChZ8AJxwK/z5iDUmABEiABEiABEiABEiABAo7AdaPBEiABEiABEiABEiABEhAOOHATkACJBDzBNhAEiABEiABEiABEiABEiABEiABEiCB2CfAFpIACRQ8AU44FPw+YA1IgARIgARIgARIgARIINYJsH0kQAIkQAIkQAIkQAIkQAJxQIATDnGwk9lEEvAnQCsJkAAJkAAJkAAJkAAJkAAJkAAJkEDsE2ALSYAESCDvCXDCIe8ZcwskQAIkQAIkQAIkQAIk4E+AVhIgARIgARIgARIgARIgARKIAQKccIiBncgm5C0BRicBEiABEiABEiABEiABEiABEiABEoh9AmwhCZAACZDAoRPghMOhM2QEEiABEiABEiABEiCBvCXA6CRAAiRAAiRAAiRAAiRAAiRAAkWAACccisBOKtxVZO1IgARIgARIgARIgARIgARIgARIgARinwBbSAIkQAIkQALZE+CEQ/aM6EECJEACJEACJEAChZsAa0cCJEACJEACJEACJEACJEACJEAChYAAJxzyeCcwPAmQAAmQAAmQAAmQAAmQAAmQAAmQQOwTYAtJgARIgARIgAREOOHAXkACJEACJEACJBDrBNg+EiABEiABEiABEiABEiABEiABEiCBfCBQwBMO+dBCboIESIAESIAESIAESIAESIAESIAESKCACXDzJEACJEACJEAC8UCAEw7xsJfZRhIgARIgARLwI0AbCZAACZAACZAACZAACZAACZAACZBA7BPIhxZywiEfIHMTJEACJEACJEACJEACJEACJEACJOBHgDYSIAESIAESIAESiAUCnHCIhb3INpAACZAACeQlAcYmARIgARIgARIgARIgARIgARIgARKIfQJsYS4Q4IRDLkBkCBIgARIgARIgARIgARIgARIggbwkwNgkQAIkQAIkQAIkQAJFgQAnHIrCXmIdSYAESKAwE2DdSIAESIAESIAESIAESIAESIAESIAEYp8AW0gCERDghEMEkOhCAiRAAiRAAiRAAiRAAiRAAoWZAOtGAiRAAiRAAiRAAiRAAoWBACccCsNeYB1IgARimQDbRgIkQAIkQAIkQAIkQAIkQAIkQAIkEPsE2EISIAFNgBMOGgL/SYAESIAESIAESIAESIAEYpkA20YCJEACJEACJEACJEACJJAfBDjhkB+UuQ0SIAE7AVpIgARIgARIgARIgARIgARIgARIgARinwBbSAIkEBcEOOEQF7u56Deybt0T5LiatYp+Q8K0oGKlinLaaWeEscSnqlix4tLivPMlIYGHp/jsAWw1CZAACZBAQRDgNkmABEiABEiABEiABEiABEggNwgUyhG9/11wodzfo6c88+xzMvzRx6RL125SoWKlHLW3Xr360rlLVxkx4mkZPGSotG3bLsexclQBFjpkAm+9PUlmzp4t877+Wsa89HJQvDZtLpONm7cYWbb8xyBbUcjcceddsnTZCvngow9l4aLF4aocV7pGJ54kP69dK2+8+aas/WWDVK9xbKFpf8NGJwr215NPjZCnRoyUu++5VzARlpMK5uZxqXLlKuYYN+zh4eaY2euB3nJui/NyUi3BZE/z5ueatuH4e+999wvanaNgLEQCJEACJEACJEACJEACJEACJBANAfqSAAmQQEwQKFQTDvfce5+sXb9BJr72mvTo2VOuuvpquemmm2TwkCGyfMUK+eSzT6VUiRIRgT/xpJNl7ryvZfrMmTJk6FC5tkN7PXHRVV4cPVqWLV8uzz3/gpQqVTqiWHBKTEyUV8a/aga2nQHua9p3gImShwQw0dT83HPdLbRu3VqwLxzFYWXLmivhcTV8mcMOc9RFZn377XeIUsrUt9rRR0vL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9Zd9kCJHGXshvCdh7JhRgsmH+ifUlWZnninvTJpsDtROqUsvxW2Fheow41QtqvU7770v9erVc8t8+umn0qPHfW7elsjr49Ld99wrnbtknhRs3brVvG8BkwO2Ojn63377zUkKHs3mZnwSh5c73LX+tfNvN80ECZAACZAACZAACZAACZAACZBAeAKHH575O+r33/0fcRw+Aq68Ly244hv2337bKhPGvSTr1v4se3bvkSWLv5PRo56TlJSMd/VddPElcAsrL499UfBi5H1798g/f/8lr00YJ/v27jO+NWoca9ZYHDiwT+v3uL/vkw8cMHmUw4XB8PHKls2b9QD20yb29j+2yV87//Sas01/8fln8uW0KeYx39u2/Saff/axfPP1V6YcBolPbtzYpHO6wNMwUHe0AzFwAR7ykEh+P+MKfJSD76gXnpWlPyyWvZrh6lUr5ZWxo3R7d8Isp552uhm4NpmQxcwZX5p3d2BCCdudNfNLWb3qJ+NVvnx5s85ugYmGo46qatyWfb/ETEwhg37w5dTPZdbM6bJi+TLZ63n0esMTT3bvavns049NHXb+uUN++22L4L0hy5f+gBCCCZOSgYt40U7UMTUto09hjTwELFEg2j6CMuEE++SF556RNT+vkuSUZNm6ZbO8rJk6vjU9EwgVK1UW3FECGybd3nx9gmxY/4vs3v2vfLtwvox58YWgd6PAz5H6gUdX/bVzp8zXfQt9IDklRfNaqsey3tLrZbJVM3H8D2X955/bBayjjfHxB+/rvhTdZyfabeSXf6EZCcRM24zZM6V8hcwP2YD+/WXypLcjZrFs2TLX95RTmkqZMpm347iGQOLW7t2DDgIffZD9pEag6CGtvl34nVu+VKlS5gPtKsIkHhow0FwlPuall6VBg4bGY+6cuWbtLC5r09ZJhl23urhVkH7hN/OD8nmVwe1ReRXbFrd169Y2k9G3vjTY/s1X84weiz93ZHxBIH1EZf8JhapVMw7w8M1OlFLZuYS1//B95iNu8M4APKMvrGNAedpppwVSIv/9l3knjavM48SWzZukZ8/75Zmnn3a3hC/Ds88+x80XxcTLr4yTMzyTOdOnT5c7busecVPy6rh0fccbpHefPm498L6I81u0kAMH7O/gcJ11YsH8BXqZ8V+yRAnJ7tbB5s3PDTpm/vLLLxmFuSQBEiABEsh7AtwCCZAA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KeJkuY6QACccIgRFNxIgARIgARIgARIgARIgARIggcJIgHUiARIgARIgARKIdQKY1PhqbsadMniUVI9efWTg4IelV+9+MnDIMLnyqmsFj9eC34zp02IdR6FuHyccCvXuYeVIgARIoIgTYPVJgARIgARIgARIgARIgARIgARIgARin0A+tHD2zOny6UcfCu5SwOaKlygh5StUQNLInt275YXnnhY8PskouCgQApxwKBDs3CgJkAAJkAAJkAAJkAAJkAAJ5A8BboUESIAESIAESIAEYoXAt9/Ol+GDB8pLY0bJZ59+LLNnzpBJb70hjw0fZt5vsv2PbbHS1CLbDk44FNldx4qTAAnEAAE2gQRIgARIgARIgARIgARIgARIgARIIPYJsIW5SCA5JVk2bdwgC+d/LTNnTJMfVyyT3bv/zcUtMNShEOCEw6HQY1kSIAESIAESIAESIAESIIEiToDVJwESIAESIAESIAESIAESyC0CnHDILZKMQwIkkPsEGJEESIAESIAESIAESIAESIAESIAESCD2CbCFJEACMUOAEw4xsyvZEBIgARIgARIgARIgARLIfQKMSAIkQAIkQAIkQAIkQAIkQAKREuCEQ6Sk6EcChY8Aa0QCJEACJEACJEACJEACJEACJEACJBD7BNhCEiABEigyBDjhUGR2FStKAiRAAiRAAiRAAiRQ+AiwRiRAAiRAAiRAAiRAAiRAAiRAAg4BTjg4JLiOPQJsEQmQAAmQAAmQAAmQAAmQAAmQAAmQQOwTYAtJgARIgAQKDQFOOBSaXcGKkAAJkAAJkAAJkEDsEWCLSIAESIAESIAESIAESIAESIAE4ocAJxziZ1+HtpR5EiABEiABEiABEiABEiABEiABEiCB2CfAFpIACZAACZBAvhHghEO+oeaGSIAESIAESIAESCCUAPMkQAIkQAIkQAIkQAIkQAIkQAIkEDsEOOFg25fUkwAJkAAJkAAJkAAJkAAJkAAJkAAJxD4BtpAESIAESIAESCDXCHDCIddQMhAJkAAJkAAJkEBuE2A8EiABEiABEiABEiABEiABEiABEiCBokMgpxMORaeFrCkJkAAJkAAJkAAJkAAJkAAJkAAJkEBOCbAcCZAACZAACZAACURMgBMOEaOiIwmQAAmQAAkUNgKsDwmQAAmQAAmQAAmQAAmQAAmQAAmQQOwTKDot5IRD0dlXrCkJkAAJkAAJkAAJkAAJkAAJkEBhI8D6kAAJkAAJkAAJkAAJuAQ44eCiYIIESIAESCDWCLA9JEACJEACJEACJEACJEACJEACJEACsU+ALSw8BDjhUHj2BWtCAiRAAiRAAiRAAiRAAiRAArFGgO0hARIgARIgARIgARKIIwKccIijnc2mkgAJkEAwAeZIgARIgARIgARIgARIgARIgARIgARinwBbSAL5R4ATDvnHmlsiARIgARIgARIgARIgARIggWACzJEACZAACZAACZAACZBADBHghEMM7Uw2hQRIIHcJMBoJkAAJkAAJkAAJkAAJkAAJkAAJkEDsE2ALSYAEco9AoZxwSEhIkkqVqkjN2idIvYYnyUmNT5XGTc+gkAH7APsA+wD7APsA+wD7APsA+0B89QHub+5v9gH2AfYB9gH2AfYB9gH2gZjtAxj3rtfwZDMOXrFSZUlIKJTD9VHNRhSqFiQlFZdqxxwrjU4+RaofV1PKlS8vJUuWkoTExKgaRWcSIIH8IMBtkAAJkAAJkAAJkAAJkAAJkAAJkAAJxD4BtpAESCCvCCQkJurx75JmHLzGcbX0uHgTOfqYGpKUlJRXm8zzuIVmwuHwchWkfqOTpPKRRwlmcnb987ds+22LrF/3s/y47AdZuuRbChmwD7APsA+wD7APsA+wD7APsA94+wDT7A/sA+wD7APsA+wD7APsA+wD7ANFtg9g3Bvj39t+2yoYD09ISJQqR1bV4+QnS9nDy+f55EBebKBQTDhUrlJVatWpK4l6Rif5wAFZs/on2fDLGtn2+1b5d9c/kpKSnBdtZ0wSyFMCDE4CJEACJEACJEACJEACJEACJEACJBD7BNhCEiABEsgpAYx7Y/x72+9bzHj4Wj0unpx8QI+TJ0nt40+QI6ocldPQBVauwCccKlQ8QqpVr2EA/Llju6xauUL27vnP5LkgARIgARIgARIgARIggUMgwKIkQAIkQAIkQAIkQAIkQAIkUGQI7NHj4qtXLpc//9xu6nxM9WOlvB4/N5kisijQCYeSJUvLsTVrG1R/bv9DtmzaIOnpqSbPRawTYPtIgARIgARIgARIgARIgARIgARIgARinwBbSAIkQAIkEA2BtLQ02bJxg+zY8YcpdpwePy9RopRJF4VFgU44HHV0NcPowP798vuWjSbNBQmQAAmQAAmQAAmQQD4R4GZIgARIgARIgARIgARIgARIgAQKJYHftmwWvH4AlXPG0ZEu7FJgEw5JScWlXPkKkp6eLr9uWCepel3YYeVn/bgtEiABEiABEiABEiABEiABEiABEiCB2CfAFpIACZAACZBAOALpaamyccN6M35evkJFSUwqFs6t0OkKbMKhfMWKopQSPJdq3949hQ4MK0QCJEACJEACJBD3BAiABEiABEiABEiABEiABEiABEiABAqMwJ49/8pePXaulJIKetKhwCoSxYYLbsIhAGjvnpxMNkTRQrqSAAmQAAmQAAmQAAmQAAmQAAmQAAkUUQKsNgmQAAmQAAnEN4G9u3cbAOUC4+kmU4gXBTbhULp0aYNl725OOBgQXJAACZAACZBAUSPA+pIACZAACZAACZAACZAACZAACZAACeQpgT27/zPxS5fKGE83mfxeRLG9AptwSEhINNXcvXuXWXNBAiRAAiRAAiRAAiRAAiRAAiRAAiQQHQF6kwAJkAAJkAAJxDaBPXsy7nBQgfH0wt7aAptwcMCkpKQ4Sa5JgARIgARIIJYIsC0kQAIkQAIkQAIkQAIkQAIkQAIkQAKxTyBPW3jwYLKJn5CgzLqwLwp8wqGwA2L9SIAESIAESIAESIAESIAESIAEiioB1psESIAESIAESIAESCA/CXDCIT9pc1skQAIkQAKZBJgiARIgARIgARIgARIgARIgARIgARKIfQJsYVwR4IRDXO1uNpYESIAESIAESIAESIAESIAEMgkwRQIkQAIkQAIkQAIkQAK5SYATDrlJk7FIgARIIPcIMBIJkAAJkAAJkAAJkAAJkAAJkAAJkEDsE2ALSSCmCHDCIaZ2JxtDAiRAAiRAAiRAAiRAAiSQewQYiQRIgARIgARIgARIgARIIBoCnHCIhhZ9SYAECg8B1oQESIAESIAESIAESIAESIAESIAESCD2CbCFJEACRYoAJxyK1O5iZUmABEiABEiABEiABEig8BBgTUiABEiABEiABEiABEiABEjAS4ATDl4aTJNA7BBgS0iABEiABEiABEiABEiABEiABEiABGKfAFtIAiRAAoWKACccCtXuYGVIgARIgARIgARIgARihwBbQgIkQAIkQAIkQAIkQAIkQALxRYATDvG1v9lahwDXJEACJEACJEACJEACJEACJEACJEACsU+ALSQBEiABEshXApxwyFfc3BgJkAAJkAAJkAAJkIBDgGsSIAESIAESIAESIAESIAESIIHYIsAJh9jan7nVGsYhARIgARIgARIgARIgARIgARIgARKIfQJsIQmQAAmQAAnkKgFOOOQqTgYjARIgARIgARIggdwiwDgkQAIkQAIkQAIkQAIkQAIkQAIkULQIcMIhJ/uLZUiABEiABEiABEiABEiABEiABEiABGKfAFtIAiRAAiRAAiQQFQFOOESFi84kQAIkQAIkQAKFhQDrQQIkQAIkQAIkQAIkQAIkQAIkQAIkULgI5MWEQ+FqIWtDAiRAAiRAAiRAAiRAAiRAAiRAAiSQFwQYkwRIgARIgARIgASCCHDCIQgHMyRAAiRAAiQQKwTYDhIgARIgARIgARIgARIgARIgARIggdgnULhayAmHwrU/WBsSIAESIAESIAESIAESIAESIIFYIcB2kAAJkAAJkAAJkECcEeCEQ5ztcDaXBEiABEgggwCXJEACJEACJEACJEACJEACJEACJEACsU+ALcxfApxwyF/e3BoJkAAJkAAJkAAJkAAJkAAJkEAGAS5JgARIgARIgARIgARijAAnHGJsh7I5JEACJJA7BBiFBEiABEiABEiABEiABEiABEiABEgg9gmwhSSQuwQ44ZC7PBmNBEiABEiABEiABEiABEiABHKHAKOQAAmQAAmQAAmQAAmQQBEjwAmHIrbDWF0SIIHCQYC1IAESIAESIAESIAESIAESIAESIAESiH0CbCEJkEB0BDjhEB0vepMACZAACZAACZAACZAACRQOAqwFCZAACZAACZAACZAACZBAISPACYdCtkNYHRKIDQJsBQmQAAmQAAmQAAmQAAmQAAmQAAmQQOwTYAtJgARIIJgAJxyCeTBHAiRAAiRAAiRAAiRAArFBgK0gARIgARIgARIgARIgARIggXwmwAmHfAbOzZEACFBIgARIgARIgARIgARIgARIgARIgARinwBbSAIkQALxRoATDvG2x9leEiABEiABEiABEiABEKCQAAmQAGTqMHYAABAASURBVAmQAAmQAAmQAAmQAAnkMgFOOOQy0KIarnHjJtKy5UXSoEHDQtAEViEvCZQte7jZ19jf2UnFShUPqSp1654gm7ZsNXJui/MOKVa8FPbuH/CLtN2JiYnufj3xpJMjLUa/IkSgWrVjpG3bdtKl262C/V2Eqh5zVeXnNOZ2aa43iOdVuY40VwPm9v755LNPzbnO7Llf5Wo94y0Yv+fibY8Ht7dc+Qpy+RVXysiRz8hHn3wsTzz5lLRu3UZKlSod7MhcgRK45tr2MmLE0/LOe+/Lex98aPZXh+uuP8Q6sXhOCHjPR8uUOSzbEKeffqb5vVirVp1sfelQdAh4+4F3fOeCC1tKoxNPklIlShSdxrCmMUWAEw4xtTtz3piJr70m4ydMkNFjx+Y8CEsWCQIXtWpl9jX2d3bSseONh9SmEiVLilLKSCmdPqRgcVLYu38++uSTiFvd/bbb3f06YeLEiMvRsegQGDd+vLw4erQMHjxYbrzp5qJT8Risadx8TmNw3+VXk3helV+kc7ad3N4/ZcqUzTjXKc2B0ZztkYxS/J7L4BCPyyFDh8mPK1fK8y+8INe0v1aaNj1Nrrv+ehn78kvy89q10rVb93jEUqjafMedd8na9Rtk5NNPy7Ud2kuzZs3kjDPOMPvryaeeknXrf5V777s/1+vcsNGJ8r8LLhSscz14EQ94ked3/aR3JmXbmjfeetP8XnziqSez9aVD0SHg7Qfe8R2MCXwxdaqs0Z/bn9euk2eefU4qHVGp6DSMNS3yBDjhUAR3IatMAvlF4ODBg/m1KW4nDIGyZcuaq1DCmLKoOnfp4urS09PdNBOxQQBXrjRomHkH2i2dO8dGw2KgFfycxsBOZBNIgAQKnAC/5wp8FxRYBT746EPxnsfu27dPft/2mxw4kGzqpJSSQYMHyXPPv2Dy8bgo6Da/OHqMPNivn5QMXCmdkpIiO3bskO3btwvSqF+JEsWl1wMPyCvjxiObazLu1VcFk8RY51rQGAyEO/e6dO0Wgy1jk3KDQOnSpeWqq6+W7xZ9Ly3OOz83QjIGCWRLgBMO2SKiAwnELoFr9ZdO9WpHi03GjB4Vu40vIi3r2atXtjXFCeaRRx6ZrR8dii6B7rfdZq6edVpQq1YtXqHiwCi4tbtlfk5dFEyQAAmQQI4I8HsuR9iKfCE8PvS0084w7fh31y65tHVrqVuntpze9FSpU+s46dqlizvxcPkVV0i58hWMLxf5R6BTp1ukbdu27gafe/ZZvW9qSpPGJ0vTUxqb9MgRIyQ9cMFTq4sv5h0pLq38TTw0YIDg0XT5u1VurTAR8I7vNKhXTx7QYwkzps+Q//77z1SzePFi8vobb0i9evVNngsSyEsCMTjhkJe4GLty5SpSvcaxOQKBgxqfH5cjdIWy0OGHlxP8SMhJ5fBuCJRNSOAhKDt+DRs1Enzu/PxwxZGfPdSGZ+GCf6g+knzDRifKUVWOisSVPrlIoP117U20LZs3uz/o7rnnPqOLZlGnzvE52n+4/Rbv+OG7I8LTbljIPqfha0ltrBEoUaKk+cHI79JY27Px2Z7c+p6Lll61qlU5gR8ttFz0997Z0L59e1m+bGlQ9GlTv5D77rnb6JRScvfdGWmjcBcZCRwL8Wz6nE5K5PQcKWPrsbksVqy4DBw82G3cC88/L08+8bikpqa6OqSfHjlCnh450tX1699PSujvKFcRJoFzy5z+HgkTjipNICkpSd597z2dOvR/7Bue9x86x4KM8N9//8qkt9+SWzrdJCefeKJs3brVVEcpJW++/bZJ2xY5PZ7imIFxP4wV2WJTHz8EONoXP/s6xy2tcexxMmvOXFn/60b5fulSmb9ggWzYuEkWLlosePFQaGDc7rpx8xZZtvxHOa5mLflm/gJBfvrMmeb5cavXrBW8bCq0HPNFg8BDAwbKmnW/yMpVq2Tm7NmmX3w5Y6bcdFOnbBvQp++D5vme6Bsoi36Bsuhj2RaOY4e+mput+Zg8OLPZmTazq8dk34SJr5tnr65Zt87sO7zQe/mKlXLb7Xe4fk6iTZvLzOcW+wgnnDgGID112jR594P3HTeu84EAfjwfdWRVs6VXX50gP//8s0lfccWVZh1u4T0OY8IKjyvA/p49d64s+uF787l98qkR4YrqY/xCs+/fmjRZ7r7nXvlp9c+ydNkKmTZ9upxx5hlhy4RVxpkyvz+nCxZ+a/bTd0sWW0nP+Wpetj7WwjTkCYGVP60y++SJJ58KG/+ttycZ+/wFC4PsyOMYjM/l5fqz//3SZfr7dL3g3Ap6nJM11BPCQYWYiZpATvdP1BtigSAC0X7P4fcF+j0Ez3YPChbI4FwT9udfeDGgyVxhYBmfpVU/r5GFi5eY7zg8f77XA73NoyZQDgK/zFJM5QWBk048yYTF1fE/rfzRpEMXn332qTzz9NPyyssvy7x580LNggsips+cZY6dc+d9Zd4FgfPbV8a/GvainUM5R8qy8RhXXHtteylWrJhp5QL9m/7xxx416XALTDrM++orY0KZjjfcYNLeBX6PvP7Gm2YsAeeWzu/BJT8slc5dunpdBb8R8TmsdvTRRo818hDbd6hxjNPFrxs2mJZXr1FDBgwcZNLRLnr2ekBw7oixHuwbrBd+t0hGjnxG94PibjjsR4wNYV/gcVuuwZMoU+Yw83sDPqPG8D2hHjQFkjx4MFlaXnCB/PP3P2b7VapUkTPOyDqGEO3x1ATTi7Zt2wk+x+t//dWcm2KsaI0eM/r40094Z5rmEzf/IQ3lhEMIEGaDCTRvfq7M+/prOf744/WXTMbJBjwwe44v/Xfff09at24DlSt4BitmRMseXlbwkpoaxx4ryDsOZcqUEbxsqt3lVzgqrosIgYcfeVS633ablCpVyq0xTijr168vwx99RG688WZXH5ro3bev3HX33YLne3ptKDtlyheCExevnmmRJUsWGQyXtWtr1uEW991/v/v5+umnn8K5CE74fljxo1xw4QXus1fhqJSSChUrSP+HHhLsW+gcKaU/p/jcQt6ePNkcA5B27FznH4H7e2S8gA8/xl+fMF7efOMNs3HsuxNPOtmkQxfOcbjMYYfJrNlzBI8rUEq5bvjcdrjuOgn3gw39BfsagwC9+/QRvKPALchEFgIF9TnFD3/sp6pHHS3hBsVw5WDt2rXN8WHxoiVZ6k1FwRAoWaq02SdlDz88bAUOK1vG2MvoH+peB+Sxv+vXqy/PPf+8HkSr7DULzsmmfPGF1lcJ0jMTHYGc7p/otkLvUAL3R/k9h+fI4/MAKe05J/XGLVW6lPks4fvQq69QsZJ8NmWKNG/eXA7T35GODeen9953n/Tr39+UQ+wSJUs65iK9LsyVXxyYNFdK6fPRAdaqjnjqSRkyeJDMnTM7yAcXVXz82WdSr169ID3OkVq1amUuligRcqU9+gT2b07OkYI2EgeZ9tdd67Zy8KCBbtqWeKj/Q67pmquvcdNIgPnUGTPlvPPPF4wlQAeBHoOfQ4YOFe8EIc4/YYOPI8hDDitb1lFxHSDQ+4EHZO/evSbX7dZbxfYbwTiEWTz51AjB70qcOzr7Rykl1apVk2vaXyuffPqpW2rfgQPyx7Zt5lh54YUXunpv4uZOncz4EfbXe+++6zUxXUAEcMfDQw/1d7fe/fbb3TQSOTmeolyriy+RF0aNEnyOkXeklP5+btLkVPlu0SLhRTEOlfhac8IhvvZ31K0d/sgj5osEBceOGSPnt2ghrS+5RCa9/bZ5rAe+QB4akHliAT9HMKCFE/m333pLLtAnFk0aN5bXX3/dMcuwYQ+7aSYKPwHcwXDzzRkTCnhBGJ4HeOapTWXw4MGCl7uhBZh0aNbsLCSzSN26dQUvf8NzP5udeabcqb/gVv6YcSVTufLl5IOPP8lSJt4Vjz/6uEGAL+tr2ncw6dBFx44ZVw+tWrVKdv2zK9Rs8g8NHKgnHcqY9Nfzvparr7xSzjz9dHn2mWdkvz5hhOHGG2/EKqzg5AGP8nlYf2Yvu7SNdOsafAVS2EJUZkcgYvtF+gcznPF5wQk+JhzS0tKgMj8MTMKywABK+Qrl5ZdffpEeenIKn1k8Z9f5QXLd9dfrHxHh+xY+l+np6TJ50iTppD/76DdLFn9v2VL8qgvqczry6ZEu9NvD3KXUrVt31/6M5zEHrpKJIkngiMpHmEdZ4HiM8yqcl/3wQ8aEEs7JRj79dJFsFysd3wQuOoTvuWjJ4WIoXPyEcosXf2feEYBzIjwOBuezDRo0gImSTwTe9QxE3tq9u7mrHle6R3IhEiYScPclJqBQXfzmvFj3JZyvzNQD29BVrlxZPvr4YySzyKGcI2UJFqOKY46pYVqG88Gfflpp0n6L9evXiXOOerQeqPb6vj3pHcE7yKBbvXq13H3XXYLfhC++8ILs3r0barn8iivcq64v0gPZTfT4AX53wog18pD7770XKoqHwL59+6Vr585Go5SSN998SyJ9JNI9994nHa67zpT9a+dfenJviJx2ShPz22HdunVG3+jEE2XcqxNMGgtnXAcvI8aFTdB55ZprMyar8Jtj1swZXhPTBUhg9qxZ7taPr1PHTef0eHrSyY3lpZdfNu8axGcfd6K1aH6u3Nqtm3w1d66Jjz4yavRok47zRdw1nxMOcbfLo2vw+vUbZP43882XzsPDhsq6dWtlxfJl8kCvnuJcTV3tmGOsQSdOnCi9H+gla9b8LDt2bJd+ffu4V23jyhNrQRryhcCD/R8U3G4cTm4LGcDqo/cdKoUTwv/pCaRJb78lW3//Xca9/JJc3ratOblUSknPBx6AWxbBiepNN14veO7nls2b5JNPPpaLW10kW7ZsMb44ialWtapJc5FBYPHixYKTa+RwUo61V1qcd75gUBg6/FDGOpzs0Sfx+By/M2myXNfhWvn224WydesWeerJJ2T8K6+YIhioOvucs006dLF+/Xo5+6xmMnbMKFm69HtZvXpVqAvzeUQAj4rASRrCj3/1VawEt8QuW/aDSbdocZ5Z+y127NihJ33Pk3ffmWw+s7jl/ZqrrzaTxij3QO9eWIWVGzp2lF49e8jMGdNNvzlwYH9Yv3hWFtTnFMdR5/jZ8qKLsuyCdpdfbnQ4huA72GS4iAkCN3S8zhyPd+jzKpyXtW1zmXtVY30OlsbEPo6nRuTG91ykvBo0aGiu1oX/jytWyBXtLpdpU78w50QjRzwlV+rBTgyYwE7JHwL4XTl4UObjX3BXPa50X6N/g6748ScZPfYl88ikcLXBI3swoQAbLqLBb86VP64w5yudbr5RnMf74DcG7vqDX6jsOIRzpNBYsZjHxYNo184/d2IVkfz555/Gr/RhZcwaC9xZdNbZGRel/b7tN2nV8kL56MMPBOcyjz36iP4sthP8VoRvv4f6YSW4GnuH/p47mJJi8lgjD+H5qEGSZTFv3lfyfuAdDhhreWFUZIO8t99xh4mVnHxQWumJnldeHis9GoOsAAAQAElEQVTbtm8zvx0u/N/5ehxnh7FfpM83nUmMcfo3pHO87H5bd2N3FmXKHCa4UwL5aVOnYkUpJAT+/XeXe7Fo+fIV3Frl9Hjav/9D7gXK995zjwwZPEgw8fjFlM+l4/XX6ePxt2YbmGzE4xBNhou4IcAJh7jZ1TlrKE7W2l97teBLJzTCB+9/YFQYqLSdxD098inj4118OW26m8UzW90ME/lO4JRTmgpuNw4nuPLZqRBmvA8vV85kJ06YILv++duknQWueFm+fKnJHl/neLMOXSxcsNBMXoXqb+9+m6s673/hb8l0HeIwMX7cONPqmrVqSei7Lvr07mNsmATCl7rJhFlgshCf4549789iHTVqlKs7+eRT3LQ38dKYsWZCyavL8zQ3YAjceVfGD4AU/WPr/XffMTosxr0yHivB1Xntsnk83X333muuiDYFAovly5bKnNlzTK7yEeEfwYJnfH41N8PHOHJhJVBQn1NczYlK4Uel97FKFStVlGMCFwPwNnYQih3B8f6br7/J0qCVK1cYnffHo1FwQQKFnEBufM9F2kTv5Gy3bt2yFPtxxXKZOXNmFj0VeUtg3CsvS+dOnQR3cqanp7sbwx2abdq0EdzF8MPS5VkeH3jW2RkXyhw4kGwuonELBhK9e/cOpEQuvDDrxDyMOT1HQtl4EOfROn/9/VfEzXUmHJISE90yF7Zs6aa7d+2e5XcFLma65qqrzBX1jz3ymOvLRPQEetx/nztBgM8PJnX9ouBuImdi6bWJE8xEg9cfLwXv47mg8OxzmhszJn2WLs2487n5uecanbO48aabzBXvyI/kXbbAUKjkr78zxnKKl8h8L0dOj6fO4+xwJwwmEUMbesvNN5vPdY/775e/du4MNQfnmYs5ApxwiLldmvsNKlWqtHnkBq6C/0zPVOJFQnhJ5YCBA3w3hhnycFdDbNm82S1XsmQJN81E/hP4c8efgv0RTpYsWuxW6OxzznHTN+sfBOgDodK4cRPjg4EvTEKZjGfxww8ZJyQelUliosL5cdEscOWLMXBhCLw0dqwcPHjQpAcMyPzMYUCx0UknGj0eeWMSPgvsEzzuatDgIfLBRx/KTD3YjJeAfR1m4Co0zFfzMl4AF6pnPm8JFCtWXE499XSzkUWLFgX9OPtY70McY2G87bbMSTvkQ+XbhcEvn3XsS5ZkfMbxY7J6jWMdtbveuGmDm2bCn0BBfU5fHjPa7RfexyrdemtGn8CxFY8q8K89rUWJwKZNm8JWd/v2jCtKlcp8V0tYRypJIEoCeemeW99zkdYR50HwxST+ls3hP0vffJN1Qg9lKHlLYPr0L82dzw3xXriHHxY8AvTfXbvcjeJxclO/nC51657g6ho2bGjSuPgi9HcJ8m+8+aaxYxE6IAodJKfnSCgbD5KcnGyaedSRR5p1JIujqx5t3JzfL8i0aNECK3MXg/MYQKPwLHAHNu7GXbBgvkfLZLQEcNdBh2uvNaxRdoz+LYk7DpAOJ+eed76rXrhggZv2JubPz9wn//vf/1zTqBcyLlzD3djexypd27698cHdLL9uWG/SXBQeAkdUOsJUZu+ejHd+IJOT4ynGFzD2g/IrV4Z/5BruVMLnGoK7K+BLiR8CnHCIn32do5a2bHmR/PjTKsHMdKtWrQRXQOP2uKpHZZxI+AVNTc24/THUJyUlNVTFfAERuOP226TZmWeElR497nNrddppp7lpXAGBPhAqjoNSSqodU93JumtcteRmPAmcFO3fn/GYltq1anksTILAwYPJMivwrMULLrzQeRan9O7d11w5ggHFEU89BVerHK0/r98tXiLvvPeedO3WTXBCWLduXalWrZrg6jFrwYAB2wgkucpHAjd3usW9RbVZs2aycfOWIClevJipDR4VUKbMYSYdusBVf7gCKVSP/I+Bd6gg3bRpU6yChPs9CIdvpqA+p3inByZtUTnvlbvtLr8cKsEzknlyb1DEzCI5OeP7MrRB+C4N1TFPAoWdQG58z0XTxtJlShr31NQ0sw63+Pfff8OpqcsnAhicGjN6lHkEaMMG9eWSiy+WP/74w2wdEwt9+2U8bgeKypUz79AM/V3i5OEHOe64GlgFyaGcIwUFiuEM7qpD88oefrh7Toq8TTAAWa58OWN2yiJTp3ZtrNxHuZgMF3lGAI/SxGPGsAG8C/C1N15DMqyc0iTjokEYv/8+/AWCe/bsdi+Aq1+/AVyNTJs21d2nt3a/1ehwsWqdwLsB3n7zbaPjIlcI5EoQHDdxLEWwXf9mTupCDx3EOX6GrmGDOMfTOnWON+MR0K35+WesKCQQRIATDkE4mPESwBXU4ydMEAxqYeBpy+bNgpeV4kWFuP3UeT6gtwzTsUlg1U8/uQ2bOHGiDOjfP4sMHjxY8AxW2Lb9/rvr7yTqnpB5RZKjc9YlS5Y0yY2WKzeNMY4Xjzw83LS+WLFi0qVrxsncFVdeaXTfffedecapyVgWX3z5pRwZuDLp77/+ls8//1yefOIJeaBXL+napYulFNUFTeDmm28KqgJ+xHnFa+xuucsBJ5TOs1a9/kif4PlM/rgi43Es0FNyRqCgPqejXxxjKowrjHDij+9u53FKzqOejAMXhYqAUuHvRCiWWLxQ1TNeK6NUpPsnXgnlTrtz43sO34vhaqMSsv7M/X5JxvuP8N1YzvPsam/55p67er16pguGwI8rlgvereFsvXHjxk5Sdu36x6RTUlKy/C7B7xHIsKHDjG3o4GHG17tAP+A5kpdI1vSaNWuMUikleBSvyfgscHGiUhnHz7Vr1rqe6375xaQx+G0SXOQ5gRFPPSlr12bsg9NPP1Ou73hD2G3+6PkN0LBRo7A+eOwSfofCuHZdRkykIdOnZzwu27mL6KabO5lBaIwf4Q5g+FAKD4FLLmntVub7xUvcdE6Op3iPGPYzguD9O1hTSMBLIOuZmNfKdMwQqFWrjnTt1t1I6IkVTtQPL3e4aevePXvMGosOHa7HysiQIUPMVfB9+/Q2Lyp8/713xbkq3ThwEdMEZs+e7bZvx/btMmHCq1lk3MsvCZ7BChuu9nULBBJNwlxBDVODBg3NSQnStts4YYtKYswZL17asD7jdtSut3aRy6+4UnDrKpr56PBHsLJKtapVBQOQcJj/zXw56cSGctut3eS5Z5+RSW+/Jd7b1eFDKRwEjqpylBxXs6apDPZ9h/bXSDgxDnrR4foOehn+/9RTM+9Q8no4n0lcGY0TRq+N6egJrF+/TjYUwOd0ypTPZP+BA6bCeKxSN/1dj8zBgwflncmTkKTkAYGcnFehGmnpGVdWV6xYEdksUvnIKll0VERPgPsnemb5XeJQvuecYx7qfFTg8S1Ie6VkiRLerEnPnDHDrLEYNHAQVkFSTk9CtLr44iAdM3lHAL9JFy5aLIu//0F69Oxl3dCmjb8K3isFh2JJGXd3Iv3z6tVYmSuv8fsjnLw0drT5zfLddwuNb+iC50ihRILzEydMcBUvjHrR9y4HjCmMGpP5kuLXX5volnVe4K2UksaNM6+odx10otIRlaSWHrNwfrdoFf8PkUD7a64xnw+EefSxx8SZNEDeEe/v/DPPPNNRB61PO7OZm58duPPeUTw9YoRJlilTRpo2PU3ad2hv8ni6Ae6MMJn8WHAb2RKocexxMkiP6zmOo/Rn2knn5HiK35C4mBExbJNVOC7gc42LouBHiS8CCfHV3Pht7fkX/E8GDR5kBIOVXhKtW18qeIY3dEs8t9E1CDwXE3rvCTryOEH0zo5CR4ldAri9ee/evaaBnTt3EVzlYDKexd333Cvvf/iB4F0fHrWbPPvss6Vho4x3DrhKnXj2+ef1MuOfL+rL4BBu+fwLLxg1Hmc2ZMhQk96uJ3+WLFlk0rZFo5MzrwRbtOi7LG6333FnFh0VBU/g7vszH2nWs0dPwUtiw8mUKVNMZdEvcBJpMiGLp595JkQj5gfdBRdcYPQ7duwway4OnUBBfU5nBV5yiscqXX7FFaYhmMDFDwGT4SLXCeTkvAqV+FMft7Gud0I9rIIEP8aqVImtCYegBuZjhvsnH2HncFOH8j2HZ4Knp6ebLTdvfo5Zexfdb7vDm3XT8+d/IwcOZDyT/pr210qvB3qL80jChvocddqXX7oXdLiFmMgzAqmpqVK8WDHBXbi333mnHgwNf4cX3jNVvkJ5U49FizPPexcG3lGFq+Y7d+lq7N4FBq7fefd98/ukdes2XpOb5jmSiyJsYtrUL+S///4zNtw9+fK48SYdboHfgPCBDY9T+uyzT5E0Mn36NLPGYtTojOf+I+1ItWrHyOIlP8jceV/Jm2+EfwyP89x5pwzX2RPYsWO7PNi3r3HEwK8z5mMUgQUmBfYELjq9pXNnOfzwjEdiBcxm9fjjj5s1Fl/Pm4eVK7hoyXns2d333CN1Ao9TGjNmjOvDRMETwITel9OnC55egtpgQgj7DmlITo+nPwcepYQ7HFpdfAlCBcmoMWPN53r23LlB7+AJcmImZglwwiFmd21wwz756CNXgdntRieeZPJ4tvvAIZlX+Hw5LfNkYMpnnxsfLF5+5RX3AHGSHsD8+pv57lXTsFOKFIEcVXbS2xknfzh5nzlnrrRseZG5ygVXg40Y8bT07tNHcLtmtaPDv98DJznvf/CBuZ0TExboR2+9PUnq1csYdPl1wwbZvGljjuoWD4XenTzJfUYm9gHaPE5/LrH2kzmzZ7svDevarZuc2+I8435M9Roy7tUJcv7/Ml8UZgxcFAoCbS9ra+qBH2yLFn1r0uEWL3gm7Hr06BHORarXqCEffvyR+XwWK1Zcrrr6Gvnk00/diWY+dicsthwpC+pz6lxdhscqOT/2n3n6mRy1gYUiI5CT8ypE/mnVKqwE++qZZ59zB9hanHe+fPLZZ+4df8aJixwT4P7JMbp8K3io33M7/9xp6trivPPkpps6mTS+4zDZ0K9/P5MPXWCA+5qrrhJnMvbe++6T1WvWyIaNm2Sq/g1UrVo1wfduaDnm847A22+9ZYKXLFFCVqxcKddc217wDHgoy5Y9XDCRMPerr5A18u4775g1Fm+++bp7bjx4yBDp0/dBwZ29+M1x3vn/kzlz5kmzs5qZ85+Nlt8YPEcCSX+5rXt31+Giiy6StyZNluNq1nJ1SL896R3927Clq7s95FGff+38S5Yu/d7YHeZ4pxw+s23btjPff85g+KOPPWr8nMVfO/40STwCa8DAQfr7s5L5DWqUXGRLYPKkt2X+N/N9/ZzPIe6g/3LGDLmk9aWCC0zPOONM+eiTj+WY6tVN+W+//VZP2mZ9l9TkSRl31F5w4QXmPAYTux9/9KEpw0X+Ejjt9NMFxz8IPlvPPve8LFj4rXz/wzI9wV7GVAb75/qQu+NzejzFo7ucCwBG60mmW7vfLjh21zj2OBk67GG59NJLzTY3b9oka9bwPQ8GRhwtOOEQJzsbs9sYeERzcRXIF1OnmpePfrtksVQ95xR6rQAAEABJREFUKmOAGLOcX8/LPKGbOnWKe9KNQeGZeuBy05at8vmUKeZLh49iAc34kUEDB4jTh3CiOH7CBNOHftQ/Dq4N3Dq5b98+ufXWjHcMhJLBO0Bwq+XjTzwha9ZvMP3IedYj7p5o0yb8lUehceI5//FHH7nNx+NSxnpuW3YNIQm8MNgZsAb/N/UPO3yOFyxcKPjR4NyiHlKM2QIkgGfkOlfyTf/yS9+arFi+THb9s8v4XHzJJWbtXaCf4HN56qmnmyv81v/6qzzz7LNSLvBCvxnTZ8ioFzPunvGWYzrnBAric7p69SrZ4blTBd/PtsdH5LxlLOklsGPHdvc7MdLzKpR/8vHH3ccbXHX11YLPJI7Jb7z5pv6BVlbwfQg/yqER4P45NH55XTo3vueeHjnSVFMpJcMffUTwOcLn6aEBDxm9M6lgMp7FDz8skXvuvlswAOqonYFODIj2vD/85L3jy3XuEnjh2Wfkx+UrTFCcp458+mlZs26dmQT6afVqGTJ0qJ6YzXiM0qeffipfTPnc+GKBSafL27YVvMNBKSV36f26cPES8/vk9Tfe0APTFeAmuGhq5Y8Z2zCKwILnSAEQ2ay+mjtH8A5HZ1CxefPmMu/rrw3njZu3mPQ5zTPuNIIPfOfMnpUl6uV6YmHrb78ZPc5LP9AD0vjMvjh6tDh39y2Yv0CwPeMUWEydNjWQErlVT34sX7FCnn9xlKtjInsCnW6+yff8YsjgQfJl4DcHJl5fevll+XXTZnnvgw/MY5KwhV83bJBrr74KySwyRu/D9MBdZzDOmTMbK0oBEHigd2/B8Q+Cz9aVepIdE0aYiEV18ISEFvrz6v0OhD6nx9Nvv10o9+vJe8TAI7sG6DEjHLu/mT9fcMcM9DjW9uzB71awiDfhhEMc7XG8HParuXPdFjsHHShwotf6kovdK36gw4n6mWecIevXr3evkFZKmfQUPenw2KOPwc2I9wsmLfB8YmMIs0hNS3W1OEF0M4UlEeP1wNVdThNTU9OcZETrG2/oKO++827QwBYKYv8vWLBAzm/RIuguBfQh2CEDBwwwZeGLvCO/b/tNrrrySj1o+rejiuu1d/+EgnjssUfM5w96PEIl1Ndhm5ae+RmD71VXXCnT9CSjsz+UyniZ26pVq+QS/bmHD8TbH9JSM2OkpxyEmZJPBG6743Z3S947GFxlSGLq1C+MBj/UmzYNfl9DSkqKtGnd2hzHjVNgka5/FMydM0e6dO4U0GSunH4Cn0wtU14CoZ89ry0/P6fe7XonOj7//HOviek8IhDteRWqgcmhjtddp7/zdiFrRCllBsyeefppWb36J6NzPocmoxdO3va5dOzalf8BAvm5f9xjgj62BjbPlQ+B3Piee+21CTJyxAj3CnelMs5tcIdC186dxXnXXLjfJR/rgc6TT2okJ514ogweNEj69X1Qzj7rLLns0jaSkJARB9VPT4vuPBllKNER2HfggD4XbSWjXnzRnYxFBGcSCGlcjYv9dMdtmVfaQw/56aeVckPH62TlypWSnHwQKlfwKCCUe6BXT1fnTeTkHMlbPp7SY8eM0pw7uu+qQtsxlgBBGoL3WN3QsaN53yPyoYLj5EUXXCDLlv0god9luDgGLxi+9pqsA9p479xnn31mviedmN7tOrpDWhfRwmDqVN07xuLonPW+fXulW9euTlbSwowBdLmlk+BOhR2eC1hQABex4DfDRS1bBo0VwebIf//9Kz/9lHH+Ap0zIYw0Je8JePtB6NbwWdu3b5+sWbNGevXsKac1bSJbt24JdTP5nB5P33/vXRnw0EPuxcommF5g27iz4Tw9RrRgwXyt4X+8EeCEQxztcVzp3PH66+SsZs2kb+8+5sTu9u7dpW6tmuZEL9yP1V3//C2YAa15bA3BoCXk+Nq1pXu3rvL66xOlerWjjXhnSPFlBX3dOrXD0sWzIGGH8LaqsIjyVPnRhx+YfQb+ObkCtsf990qTxidL3Tp1zIlnS33ieFyN6uaKh9AvL1xNhO1Apk//UlAWfaltm8tM2dNOaSKnNz1VflyxPE/bXJSCe/fPwYPJQVXHlQc1jqlm9l/XLp2DbMi0v/ZqYwNT5L0C/2OrHyOXXHyxeflww/r15aILL5AtmzeZMthH+DHhlMGJA3SQrb//7qi5zgcCOL6COySSY2Svnj3cfRjunR6IgeM49nmnm2+Wq/UE3wnHH68/g9eH/eFwSuOTTDx8TvOhuUVyE4Xlc+qFd8QRR7jZZ0dmvMDPVRTRRGGvdk7Oq9Am/Ohq1LC+1KtbV38OO8rFrVpJ7ZrHCW5Lb3dZW/P5w+cQvo4gj2OC7XN5l56ohL12zWOdInG/zs/9g+9T8D/z9NPinnskAHLre+5pfazD740z9LnkzTfdJM3OPFPqn1BXcM55wvF1zGepc6eb3SrhfQ1dut0qkBNPOln+/munjHvlZfObZtPGX41fi/POM2v8Lvr559UmzUXeE3j0keFS67hjBfvygV69zO/Uu++6y0wK1al1nNlPtlrgHVcXX9RSH0ePlVZ6ULRD+2ukUcOG0qDeCb7lEC/acySUiVf5au4cObf5OeZzdt+99wouinnu2Wf177v7jQ42+Pjx+fffXdKm9aVygj4PxR0PmKDA+Sk+x8OGDrEWvb37rVJTj0fA9zT9+/HO22+z+saTwXs+irue/dqOfYPvKUi4iR2UxW+KJvidr8eHOl5/vfn8NWxQX5+rXK8nd/fCxSr4DCI2BGMAVkcacp2Atx+Av1cwdoDP1wXnn6cnlN4O+9vPW6GcHk8nvDrefP9irBGfa4w5YNtnNTtTnO9X73aYjg8CnHCIj/0c1Eo8Jx/PaMOJHV7mhCtLghzCZDBrisHp775bGPa5fWGKUBXjBPbt2ytz58yW1atXZfvF5UWBvoTb2VF22/ZtXhPT+UAAkzs4kcAJfz5sjpsoRASwz2fOmC649RWf30JUNVYlhEC0n1O8bLHd5ZebKCuWLRdOEhoU+bbIyXkVKrdnz27zPYof5hjchI6S+wS4f3KfaWGL+Nu232TWzBnmIgq/uu3fv0/69esvgwcPlo8/+UTq1avvuuNFqbfdfoe079DB6H799VfBOavJcJFvBLAvJ739luB3KgbRMCkUzcZxhS7Oc3HRXDTleI7kSyvIiIuVcGHS4489Kk8+8bi8+87kbD97QQF0BuehuEhmrv4tCfZaFdE/fPH7kd+ZEeHKsRPGhzBBEe3nL8cbZMFCSSAnx1Occ+Fzjd8yhbJRrFS+EuCEQ77i5sZIgARIgARIgARIIDcIiNx9z70yc/Ycmb9woXlJH6I+0PsBrCgkQAIkQAIhBDCB8LYezIYaz5qePnOmrFv/qyxb/qOsXLVK+j/0kDmW4jEQI558Em4UEiABEiABEiABEiCBHBDghEMOoPkWoZEESIAESIAESIAE8oHAhS0vkLp16wqeZYwBsmFDhwmuls+HTXMTJEACJFAkCTzU70Hz7gfnCukSJYpLxUoV3bbgHRB4dNknn3zs6pggAV8CNJIACZAACZAACWQhwAmHLEioIAESIAESIIGiTQCPIrjz9tula5cuRbshh1D7eCg6ftyr8vrrr8vgQYPknLPPlpfGjo6HZrONJEACJHBIBPDuhwb16smNN9wgzz7zjLz5xhvSr++Dcubpp5tnUC9d+v0hxWfhwk2A50iFe/+wdiRAAiRAArFBIL8nHGKDGltBAiRAAiRAAoWYAF6CiKsz8fzVQlxNVu0QCXz80Yd6kKyPeSkmX8h2iDBZnARIIK4I4B0qc2bPkqeefEL69umtJ28nytatW+KKQT41ttBthudIhW6XsEIkQAIkQAIxSIATDjG4U9kkEiABEiABEvAnQCsJkAAJkAAJkAAJkAAJkAAJkAAJkEDsE8j/FnLCIf+Zc4skQAIkQAIkQAIkQAIkQAIkQALxToDtJwESIAESIAESIIEYJMAJhxjcqWwSCZAACZDAoRFgaRIgARIgARIgARIgARIgARIgARIggdgnwBbmPgFOOOQ+U0YkARIgARIgARIgARIgARIgARI4NAIsTQIkQAIkQAIkQAIkUAQJcMKhCO40VpkESIAECpYAt04CJEACJEACJEACJEACJEACJEACJBD7BNhCEoieACccomfGEtkQSCkjsr96muypnSp766ZFJSiDsoiRzWYEPvBFmbzcjkpIlKTiJaVYiVJSvGSZqARlUBYxCkt7EqoWl+Lnl5eS7SpKmWsqRyUog7KIkV174ANflImF7eRXf8svbuiT6Jvoo3nZr7mdzGMGWIM5mGT3+YEPfFGG+6eUOQaDCbll9qfs+gX6DvoQuUXODEzJrWSen++gT6JvgjWYRyMog7KIweNBGSke4XkpubFf43PGfsB+wH6QP7/r8R2F7yp85sA8GkEZlEUMfs9Ffg5Hbjy+4XNWGPtBdp/jWLZzwiGW924BtC3lMJHkaumSVkaJKpYg6YnRCcqgLGIglq0JsMEHviiTV9tJSEiS4nqyITExSRL0xENCQoJeRyOJkqjLIgZiFXR7EquVkJLNy0uxo0pIQpliooonRiUog7KIkahj2doDG3zgmxAD24m2v4X2R/RR9FX0WcQqaG7oi+iT6JsJedivuZ2EkONFZMcDciM3HCPYD9gP2A9C+wDyPI7ye5v9gOdv6AMQHg94PGA/4PEAfQBSsMcDnLN5hefx2Cdeic/94+0T8ZhOiMdGs815RyClQpqI7lXpSgkk2i2hDAQxTCxLAGPLh+0kJCWJ6LYopfRKSbR/SqmMcnptYlkC5Fd7kk4oJSpR1ylBSYJSEu0fyqgEJYiBWLbysMEHvglK2dysepRBWcRALJsjbPCBL8rY/Gx6lEFZxEAsm1+s7R/TF/V+UUpl9E9bwy16pQLl9NrEsvgZm/ZRKuBv8bOplQqU02sTy+JobNpHqYC/xc+mVipQTq9NLIujsWkfpQL+Fj+bWqlAOb02sSyOxqZ9lAr4W/xsaqUC5fTaxLI4Gpv2USrgb/GzqZUKlNNrE8viaGzaR6mAv8XPplYqUE6vTSyLo7FpH6UC/hY/m1qpQDm9NrEsjsamfZQK+Fv8bGqlAuX02sSyOBqb9lEq4G/xs6mVCpTTaxPL4mhs2kepgL/Fz6ZWKlBOr00si6OxaR+lAv4WP5taqUA5vTaxLI7Gpn2UCvhb/GxqpQLl9NrEsjgam/ZRKuBv8bOplQqU02sTy+JobNpHqYC/xc+mVipQTq9NLIujsWkfpQL+Fj+bWqlAOb02sSyOxqZ9lAr4W/xsaqUC5fTaxLI4GptS5jtOKWXxsquVUqasXoiJZXE1toCvUsriZVcrpfQmlOgFtyOR/ymlNDIlekFuEvmfUkojU6IX+cgtUWx//PwEk1FK6V2jRC/ycf/o37oS/o/7J5iLUkrvGiV6wf0jkf8ppTQyJXpBbhL5n1JKI1OiF+Qmkf8ppTQyJXpRKLhJnP/pIds4J8Dm53e+Y7MAABAASURBVCqB1OLpOZpoCFcJxAqnhw42MzGBzCEKYtlCKJUgSukDls0hCr3SsWzuqEN+tEcOTxKVcOjtSUcIHcvWHv/tWEtlMRSW7cTa/kFfVAo7MQvyqBWIZSsEm1LcTjg+YBNODx1sSpEbWIQK2ITqnDxsSpGbw8O7Bhtv3puGTSly8zJx0mDjpEPXsClFbqFckAcbrMMJbEqRm41NOD105AYK4QVswltElMqf83huR6x/StknHBT3jw+3BF+bUjyOhgOEPhVODx1sSpEbWIQK2ITqnDxsSh0qt4xoiJWRyrqETSluJysZEaWPlWL5g00pcguHB2zC6aGDTam854ZtxbPYv8nimQrbnmMCKjF3PrTp+sPvF8vPFk3ls92Orkc08Wy+SilRStnMkl/tSSpmr4O1cmEMCUqJXyw/W5hwVlVh2U6s7R+lcqcfKKX8+7W2W3duFAaluJ0ocLmuSpGbCyOKhFLkFgUu11UpcnNhRJFQqgC5eeqplPLkcp5USvF7IQf4lCK3HGAzfU0pZS2qlN1mLRTGoJQy2wpjMiqllFkf6kIpxe3kAKJS5JYDbKavKaWsRZWy26yFwhiUUmZbYUxGpZQy60NdKKW4nRxAVIrccoDN9DWllLWoUnabtVAYg1LKbCuMyaiUUmZ9qAulFLeTA4hK+XPLQciYKsIJh5janWxMLBBgG0iABEiABEiABEiABEiABEiABEiABGKfAFtIAiRAArFIgBMOsbhX2SYSIAESIAESIAESIIFDIcCyJEACJEACJEACJEACJEACJEACOSDACYccQGORgiTAbZMACZAACZAACZAACZAACZAACZAACcQ+AbaQBEiABEigKBLghENR3GusMwmQAAmQAAmQAAkUJAFumwRIgARIgARIgARIgARIgARIgATCEOCEQxgoRVnFupMACZAACZAACZAACZAACZAACZAACcQ+AbaQBEiABEiABAojAU44FMa9wjqRAAmQAAmQAAkUZQKsOwmQAAmQAAmQAAmQAAmQAAmQAAnEJYE4m3CIy33MRpMACZAACZAACZAACZAACZAACZBAnBFgc0mABEiABEiABAqCACccCoI6t0kCJEACJEAC8UyAbScBEiABEiABEiABEiABEiABEiABEohJAkETDjHZQjaKBEiABEiABEiABEiABEiABEiABEggiAAzJEACJEACJEACJJAXBDjhkBdUGZMESIAESIAEck6AJUmABEiABEiABEiABEiABEiABEiABGKfQEy2kBMOMblb2SgSIAESIAESIAESIAESIAESIIGcE2BJEiABEiABEiABEiCBnBDghENOqLGMlUB6arqo9HSrPVIDYiCWzR82+NjskeoRA7Fs/um6LRCbPVI9YkBs/qgD6mKzR6pHDMSy+accTJc03SabPVI9YiCWzR82+NjskeoRA7Fs/rDBx2aPVI8YiGXzB1Owtdkj1SMGYtn8UQfUxWaPVI8YiGXzR1+E2OyR6hEDYvOHDWKzR6pHDIjrH5KADRKijjqLGBBbQdggNnukesSA2Pxhg9jskeoRA2Lzhw1is0eqRwyIzR82iM0eqR4xIDZ/2CA2e6R6xIDY/GGD2OyR6hEDYvOHDWKzR6pHDIjNHzaIzR6pHjEgNn/YIDZ7pHrEgNj8YYPY7JHqEQNi84cNYrNHqkcMiM0fNojNHqkeMSA2f9ggNnukesSA2Pxhg9jskeoRA2Lzhw1is0eqRwyIzR82iM0eqR4xIDZ/2CA2e6R6xIDY/GGD2OyR6hEDYvOHDWKzR6pHDIjNHzaIzR6pHjEgNn/YIDZ7pHrEgNj8YYPY7JHqEQNi84cNYrNHqkcMiM0fNojNHqkeMSA2f9ggNnukesSA2Pxhg9jskeoRA2Lzhw1is0eqRwyIzR82iM0eqR4xIDZ/2CA2e6R6xIDY/GGD2OyR6hEDYvOHDWKzR6pHDIjNHzaIzR6pHjEgNn/YIDZ7pHrEgNj8YYPY7JHqEQNi84cNYrNHqkcMiM0fNojNHqkeMSA2f9ggNnukesSA2Pxhg9jskeoRA2Lzhw2SxR6lAjEgtmKwQWz2SPWIAYnUP978OOEQb3s8j9ubmKxybQt+sfxs0VbAL1Z6elq04az+frH86mANaDH4xvo3RU8IWQpGoVaYU9KxrEW0zfhYHSIzmBg6ltVb24yP1SEyg4mhY9m8fZnaCln0vrF0HUxdLGUjVZsYOpbN368v2srY9H6x/Gy2eDa9Xyw/my2eTe8Xy89mi2fT+8Xys9ni2fR+sfxstng2vV8sP5stnk3vF8vPZotn0/vF8rPZ4tn0frH8bLZ4Nr1fLD+bLZ5N7xfLz2aLZ9P7xfKz2eLZ9H6x/Gy2eDa9Xyw/my2eTe8Xy89mi2fT+8Xys9ni2fR+sfxstng2vV8sP5stnk3vF8vPZotn0/vF8rOFi+en84vlZ/OLGc7mF8vPFi6Wn84vlp/NL2Y4m18sP1u4WH46v1h+Nr+Y4Wzpaanh1EaXq9vx+c3G7RjcYRd+bPxsYYP5KP1i+dl8QoY1+cXys4UN5qP0i+Vn8wkZ1uQXy88WNpiP0i+Wn80nZFiTXyw/W9hgPkq/WH42n5BhTX6x/Gxhg/ko/WL52XxChjX5xfKzhQ3mo/SL5WfzCRnW5BfLzxY2mI8yN2P5bKZImjjhUCR3W+GtdNLfukvpMXpcyQ2JtqYoAxEdw8SyBDA27QNfiMXNqkYZSHbbSUtJEUlP1/8ZYg1oMaQHyuoAYmJZ/PKrPSk/7xNcYZ+elp6jOx1w5TzKIgZiWZojsMEHvihj87PpUQZlEQOxbH6wwQe+KGPzs+lRBmURA7FsfkVs/5h97Nce0xcDfRN91NZumx5lINn1a24nmCCYQeKZWzCRyHJgBolnbqb9keFyvVAGQm4ukogSYAYht4hwuU5gBiE3F0lECTCDkFtEuFwnMIOQm4skogSYQfKTW2pKsrVuafn0O4vbCd4F6AOQ/OwHZh8EV8PNGRt/l7g8sG8g3D8ukogSYAaJU2662elGIoLlcQIziC7sO17Fz6kHmk6CGSQ7bto1rv/16HBct5+Nz2UCSbtFim9VkrBHH/AOpolKjU7SdRmURQzEEssfbPCBL8rk1XbS0lIkOXm/pKamSFpaqpa0KCXVlEWMNB3L0hzJr/akbj0g++f9Iwe3HZC0PQclPTk1KkEZlEUMxLK1Bzb4wBdlivp2Ym3/oC+iT+Z1v+Z2Qo8XkR0PYptbKJNI8uSWloffP2n6u4nHA28/ZH9LY3/T53q50Q+8/cqW5nbY39A3YrcfmAEZyw+GNH7/6GMN9r8jsdsPsK8t3UAzSMmX39uoA8930jRvR9jf0ni+o/sD+0Fe9gPbcS9e9JxwiJc9nY/tTNojUnJzgpT5JVFKr0mISlAGZREjuyrDB74ok5fbwa3AKXrS4eCBfZK8f09UgjIoixiFpT1pvydL8ux/ZP/Hf8med3dEJSiDsoiRXXvgA1+UKVTb8bQZdUMdUdfs2pNf/Q11QZ1Qt7zkhj6Jvok+mpf9mtvJPGaANZiDSXb9DT7wRZlY2j/RtgX+YAAWYBKv3MAALKIRlCG3vP3eRp8EY7COZt/AF2VQFjHYrzOPk2DjJ+S2X8DAj1E4G8qwv/F4wH7Azw+OD+wH7Adx1w9CTrRw7oXvRHwWwCIaQRmURYyQsFmy8IEvykSzDfiiDMoiRpbAIQr4wBdlUDYaQRmURYyQsFmy8IEvykSzDfiiDMoiRpbAIQr4wBdlUDYaQRmURYyQsFmy8IEvykSzDfiiDMoiRpbAVLgEOOHgomCCBEiABEiABEiABEiABEggPwhwGyRAAiRAAiRAAiRAAiRAArFJgBMOsblf2SoSyCkBliMBEiABEiABEiABEiABEiABEiABEoh9AmwhCZAACeQJAU445AlWBiUBEiABEiABEiABEiCBnBJgORIgARIgARIgARIgARIgARIomgQ44VA09xtrXVAEuF0SIAESIAESIAESIAESIAESIAESIIHYJ8AWkgAJkAAJ5IhAXE44lC17uLRseZGRunVPiBhcYmKiKYOyJ550csTl6EgCJEACJEACJEACJJB7BBiJBEiABEiABEiABEiABEiABEigcBKIywmHi1q1kvETJhj56JNPIt4z3W+73ZRB2QkTJ0ZcLo4cTVNVQqIkFS8pxUqUkuIly0QlKIOyiGGC+SyOOONIafrUGdLi3f9Jyy8ujkpQBmURw2cTxpRSRmR/9TTZUztV9tZNi0pQBmURwwTzWSRULS7Fzy8vJdtVlDLXVI5KUAZlEcNnE8aEuqBOqFtetqdUvcPkqO7HyjED6kr1R+pHJSiDsogh2fyhr6DPoO/kZX9DXVAn1C0v25Nf+ye/uHE7mcdA9FH0VTDJplsLfOCLMnnZr7kd7h/0RfYD9gP2g8w+gGMujr04BuOzATZ+Ah/4ogzKRiMog7KI4bcN2OADX5SJZhvwRRmURQzE8hP4wBdlUDYaQRmURQy/bcAGH/iiTDTbgC/KoCxiIJafwAe+KIOy0QjKoCxi+G0DNvjAF2Wi2QZ8UQZlEQOx/AQ+8EUZlI1GUAZlEcNvG7DBB74oE8024IsyKIsYiOUn8IEvyqBsNIIyKIsYftuADT7wRZlotgFflEFZxEAsP4EPfFEGZaMRlEFZxPDbBmzwgS/KRLMN+KIMyiIGYvkJfOCLMigbRqy/9VEGZRHDbxuwwQe+KBPNNuCLMiiLGIjlJ/CBL8qgbDSCMiiLGH7bgA0+8EWZaLYBX5RBWcRALD+BD3xRBmWjEZRBWcTw2wZs8IEvykSzDfiiDMoiBmL5CXzgizIoG42gDMoiht82YIMPfFEmmm3AF2VQFjEQy0/gA1+UQdloBGVQFjH8tgEbfOCLMtFsA74og7KIgVh+Ah/4ogzKRiMog7KI4bcN2OADX5SJZhvwRRmURQzE8hP4wBdlUDYaQRmURQy/bcS7LS4nHLw7vWzZsuauBa/Olu7cpYtrSk9Pd9NMZBJISEiS4nqyITExSRL0xENCQoJeRyOJkqjLIgZiZUYOTh1x1pHSeEgTqdykipSsUkaSyhSPSlAGZREDsYKjZ+ZSDhNJrpYuaWWUqGIJkp4YnaAMyiIGYmVGDk4lVishJZuXl2JHlZCEMsVEFU+MSlAGZREjUccKjp6ZQx1QF9QJdcur9pRqUFaO7FRDSh1fRhIrFJPEUnq/RiO6DMqaGDpWZguCU+gj6CvoMwl52N/yqz35tX/yixu3kxBy/NOfgwiOb+RGbjjSHVo/AEP2t7z8XuD+QR/zCvsb+xv6A/sB+wH7QV7/LuH3D/qYV3jc4XEH/YH9gP2g8PUD/KaLZ0mI58Y7be/Zq5eTtK4bN24iRx55pNUekSEOnBKSkkSUHpwPiET5p1RGWcQwsSzla15TU5KKJ4lKUpKgy0iUfyiDsoiBWLbiKRXSRPSnJF1vA2Lzs+lRBoIYJpbFMemEUqL6PgDIAAAQAElEQVQSlagEJQlKSbR/KIOyiIFYtvKmDvnQnsPPrSQqScwEjVLRt0cplVFWx0AsW3tMH9G+SindZZTNzapXSmWU02sTy+KJOuRHe/Jr/5i26jYrFWi/pd02tVKBcnptYlkcjU37KBXwt/jZ1EoFyum1iWVxNDbto1TA3+JnUysVKKfXJpbF0di0j1IBf4ufTa1UoJxem1gWR2PTPkoF/C1+NrVSgXJ6bWJZHI1N+ygV8Lf42dRKBcrptYllcTQ27aNUwN/iZ1MrFSin1yaWxdHYtI9SAX+Ln02tVKCcXptYFkdj0z5KBfwtfja1UoFyem1iWRyNTfsoFfC3+NnUSgXK6bWJZXE0Nu2jVMDf4mdTKxUop9cmlsXR2LSPUgF/i59NrVSgnF6bWBZHY9M+SgX8LX42tVKBcnptYlkcjU37KBXwt/jZ1EoFyum1iWVxNDbto1TA3+JnUysVKKfXJpbF0di0j1IBf4ufTa1UoJxem1gWR2PTPkoF/C1+NrVSgXJ6bWJZHI1N+ygV8Lf42dRKBcrptYllcTQ27aNUwN/iZ1MrFSin1yaWxdHYtI9SAX+Ln02tVKCcXptYFkdj0z5KBfwtfja1UoFyem1iWRyNTfsoFfC3+NnUSgXK6bWJZXE0Nu2jVMDf4mdTKxUop9cmlsXR2LSPUgF/i59NrVSgnF6bWBZHY9M+SgX8LX42tVKBcnptYlkcjU37KBXwt/jZ1EoFyul1QlKizU1ydzv6R4NlSwW6HUudwqmV8nJje8IxCqdTityUUuHQ+OqUUhH9DubnJxijUuSmlAqGEkFOKRWX/S0CNDHtooceY7p9ETWuYaNGUrlyFV/fB/v187WHMx5TvYbgfRHhbNnp6tWrL6VKlMjOrdDZlUoQpVSu1EvpWLZAh1Uvowe0D3076focGLFs20ktni5mwsDmEIUesazuhyeJSsiF9iCEjmXbDuqQH+1JqlLcTBjY6hGpPk0zQSybP/qIUmi0zSNyPWLZvFEH3A1is0eqz649+bV/0Fal8p4bt2PvGWBjs8KmFPdPOD5gE04PHWxKRcYN/n6CWDY7bEpxO+H4gE04PXSwKUVuYBEqYBOqc/KwKUVuDg/vGmy8eW8aNqXIzcvESYONkw5dw6YUuYVyQR5ssA4nsClFbuHZ6B9b4QxaR24aguUfbCwmUSp/fm9zO7Y9IKL0PhDLH2xK8XgQDg/YhNNDB5tS5AYWoQI2oTonD5tS5Obw8K7Bxpv3pmFTKu+5ebcZj+mEQtToAq1K374PWrdfqlRpObPZmVa719C2bTv59PPPZO36DbJg4UL5afVqWb5ipbz2+ptS49jjvK4m/dzzL8jGzVtk2fIf5biateSb+QtMfvrMmbJGx1i9Zq1cc21741sUFkrl1odWiVLK2uSkMsWstmgMCXobfrFwx0A08Wy+GOT3i5VUzN5WW8xwetMen1h+dQgXz6bLrj0JJe0/Lmwxw+mVUuIXS6nc4aaU8u1vfnWQKP6UUv7tSVSSG3/Z7R+lcmc7Silfbkqp3GiO2YZS9lhK2W3RVEApZbZlK6OUspmi0iuluJ2oiGU4K0VuGSSiWypFbtERy/BWitwySES3VIrcoiOW4a0UuWWQiG6pFLlFRyzDW6lCwy2jQoe4VIrtyQlCpciN3MT8JlFKie1PKbvNViacXillthXOBp1SCqtDFqUUt5MDikqRWw6wmb6mlMpJ0bgoE/cTDkuWLDI7+rJ2bc063OK++++XhIQMVD/99FM4F6Nr3bqNvDh6tODxSyU9dydUqFhBzv/f+TLtyy+lQsVKxtdZ4A4IxC57eFn5YupUPSlxrLst+JQpU0ZGPv20tLv8CmQpJEACJEACJJDHBBieBEiABEiABEiABEiABEiABEiABEgg9gnkTQszRtHzJnaRiPr4o4+bepYqVUquad/BpEMXHTveYFSrVq2SXf/sMunQRdOmp8nosWOM+uDBgzJGTzw0P+cc6Xj99TJt2jSjP+yww2TGzJlSrFhxk/cuihUrJrC//dZbcsH550uTxo3l9ddfd12GDXvYTTNBAiRAAiRAAiRAAiRAAiRAAiQQwwTYNBIgARIgARIgARIoogTifsJh8eLFsn37drP77r7rLrP2Llqcd76UK1/OqJ4eOdKswy369O3r3plw5x13yPCHh8mvG9bLV3PnSNfOt8j06dNNsSpVqsgll1xi0qGLiRMnSu8HesmaNT/Ljh3bpV/fPuLcgYG7JEL9mScBEiABEsh/AtwiCZAACZAACZAACZAACZAACZAACZBA7BNgC3NGIO4nHIBt/LhxWEnNWrUk9D0LfXr3Mbbdu3fLF1M+N+lwixNOOMGoV69eHdYPkw7p6enGp0WL88w6dPH0yKdCVfLltIyJChhq1aqDFYUESIAESIAESIAESIAESIAE4pkA204CJEACJEACJEACJFBICXDCQe+Yl8aOFTwGSSdlwIABWBmpWKmiNDrpRJOePGmSWYdb4B0Mzh0Iq1etCuciaWlp8u+uf42tcZNTzNq7SE4+KDv/3OlVmfSWzZvNGouSJUtgRSEBEiCBQkyAVSMBEiABEiABEiABEiABEiABEiABEoh9AmwhCYQnwAkHzeXgwWSZNWuWTolccOGFkpiYaNK9e/cVpZTgzoQRT2W9+8A46UWdOscbP52UNWvWYBVWtu/IeHRT1apVs9hTU1Oy6KBISUnFikICJEACJEACJEACJEACJEACkRGgFwmQAAmQAAmQAAmQAAkUEAFOOATAP/LwcJPCy5u7dL3VpK+48kqz/u677+S//zLuTjCKkMUvv6wzkxJQ16xZC6uwckSlI4zeeWeEyXBBAiQQVwTYWBIgARIgARIgARIgARIgARIgARIggdgnwBaSQLwS4IRDYM+vX79ONqxfb3Jdb+0il19xpZQuXdrkHx3+iFnbFqmpqbLrn13G3KBBfbMOtyhXvpxRL1u61Ky5IAESIAESIAESIAESIAESyHcC3CAJkAAJkAAJkAAJkAAJkEAeEeCEgwfs8y+8YHJVjzpahgwZatK4G2HJkkUm7bdYu+5nY27QsKGcdfZZJu1djBz5jOBdD9B99dVXWFFIgASyEKCCBEiABEiABEiABEiABEiABEiABEgg9gmwhSRAArFKgBMOnj377uRJsm/fPqOpWKmiWY975RWzzm7x7DPPmccqKaXktdffkk63dJayZQ+X42rWkkcee1yuaX+tCfHvrl0y5fPPTZoLEiABEiABEiABEiABEih0BFghEiABEiABEiABEiABEiABEsghAU44hID7+KOPXM3Bgwdl7JjRbt4vMXfObOn/YD/jUqJEcRn28MPy0+rVMu/rr+XGG280+gMHkuWili31pMZek+eCBKIlQH8SIAESIAESIAESIAESIAESIAESIIHYJ8AWkgAJkEBRJRCXEw5454Jthz322CPmTgXYZ82cKaG+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jhA6lo0bmKYrONk8ItcjltVb1yGW2oPPllK5ww2xbNxgU4rbCccHbMLpoYNNKXIDi1ABm1Cdk4dNKXJzeHjXYOPNe9OwKUVuXiZOGmycdOgaNqXILZQL8mCDdTiBTSlyE8lKB2yyajM0sClFbhk0gpdgE6zJzMGmFLllEslMgU1mLjgFm1K5xU3/2AoO7+ZydzsJbtzQBLcTSiQzDzaZueAUbErlVj/g/gmmG1kO+8DmCZtS3D/h+IBNOD10sClFbmARKmATqnPysClFbg4P7xpsvHmmMwnYj/yZPkyRQMQElMqtg5ASpZR1u0llillt0RgS9Db8YuGK9Gji2XwxKO4Xy68Otpjh9Nm1J9+2U8y+78LV26Yz7fGJ5cfUFjOc3t0/4Yxal+RTB22O+L+wtEep3Nk/Sinfz6lSKmI2fo5KKW7HD5DFphS5WdD4qpUiN19AFqNS5GZB46tWitx8AVmMSpGbBY2vWily8wVkMSpFbhY0vmqlyM0XkMWoFLlZ0PiqlSI3X0AWo1Jxzs3CJTu1UuSWHaNwdqXii1s4BvGk44RDPO1ttpUESIAESIAESIAESIAECjkBVo8ESIAESIAESIAESIAESKDoEuCEQ9Hdd6w5CeQ3AW6PBEiABEiABEiABEiABEiABEiABEgg9gmwhSRAAiSQYwKccMgxOhYkARIgARIgARIgARIggfwmwO2RAAmQAAmQAAmQAAmQAAmQQOElwAmHwrtvWLOiRoD1JQESIAESIAESIAESIAESIAESIAESiH0CbCEJkAAJkICVACccrGhoIAESIAESIAESIAESKGoEWF8SIAESIAESIAESIAESIAESIIGCI8AJh4JjH29bZntJgARIgARIgARIgARIgARIgARIgARinwBbSAIkQAIkEMcEOOEQxzufTScBEiABEiABEog3AmwvCZAACZAACZAACZAACZAACZAACeQdAU445B3b6CLTmwRIgARIgARIgARIgARIgARIgARIIPYJsIUkQAIkQAIkEMMEOOEQwzuXTSMBEiABEiABEoiOAL1JgARIgARIgARIgARIgARIgARIgARyTqCoTDjkvIUsSQIkQAIkQAIkQAIkQAIkQAIkQAIkUFQIsJ4kQAIkQAIkQAJFmAAnHIrwzmPVSYAESIAESCB/CXBrJEACJEACJEACJEACJEACJEACJEACsU8g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B5wb1bXGz5G0644NptsGDKGX0JJACh1CKoRAXkIapDwS0gkJIXQIpL90AqmkUhNCElIoofdmescBYzDdgI3XW6R3v7szklaeczWzK2l3pc8/H83onO98d+Y/I600d1eCR71NfvaGp+SWw2+QKw74j1z8ln9lCvSgFx71xiksFZm4ICdTHs7L5AdymQI96IVHvXGwLdgmbFsz96dV4xSf7JXeyxZLzwXPy9Jzn8kU6EEvPOpxA1swButmHh9sC7YJ29YO+4PHGB5reMw183HKcSrPgWAN5mBS77yGBlr0tNPxybov0IMBWIBJp3IDA7DIEught+a+DsE5CcZgneXYQIse9MKD53XleRJsQkFuPQIGIUZJNfTwfOPzAc8DPn7w/DBWzwM8R2HbsI1ZAj3o5c/T9D9LwZfc+HzA82BA8NyBxwJYZAn0oDfN80691/ntXOeEQzsfXe4bCZAACZAACZAACQyfADtJgARIgARIgARIgARIgARIgARIIBMBTjhkwjVWxNwOEiABEiABEiABEiABEiABEiABEiCB9ifAPSQBEiABEiCB8UWAEw7j63hxa0mABEiABEiABMYKAW4HCZAACZAACZAACZAACZAACZAACZDAEAJtOeEwZA95hwRIgARIgARIgARIgARIgARIgARIoC0JcKdIgARIgARIgATGFoGOm3BYeZWZsueee/mYNm0l82i86U07ec1mm21uatZZdz2v2W33PUxNowqP/PdReezxhfKFw77YKEv6kAAJkAAJkEAzCdCbBEiABEiABEiABEiABEiABEiABEig/QkM2cPckHsdcGennXaSX51xho+DP/KRxD2euepM+eNZZ3nN2eecm6hB8vTTTveaM37zG8nn80g1LQqFgqiqTJ06tWljNMq4f4pIz5yiLN1gQF7ZqJgp0INeeNTbHmigRU8zx1n1dWvIdt95nex87m6y5z/3zhToQS88xsr+tIqb5vJS6J4oXRMmSffEKZkCPeiFRz1u0ECLnnYYZ9ImU2XNQ9aV2cdsJHNO2TRToAe98JA6/9qNG/en8hjDYwGPCTCpcxoINNCipx0eP9wfngc453ke8DzgeVA5B/Dcjud4PNfjsQE2oYAGWvSgN0ugB73wCI2BGjTQoifLGNCiB73wgFcooIEWPejNEuhBLzxCY6AGDbToyTIGtOhBLzzgFQpooEUP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lKpKyEtVpRH/VHVMcFPVRuyO3xdV20vVrmXZAFX1Y1k9qmqVMuVVleNkIjYoViW3QRLZblXJLRuxQbUquQ2SyHarSm7ZiA2qVYfDbbA3y60qx8nCK9aqklvMIstSldyy8Iq1quQWs8iyVCW3LLxirSq5xSyyLFXJLQuvWKs6NrjF29Opy46ccLjttlv8RAEO+u67745FOd534Pv8en9/vxxz9NF+HRMQmIjwd6KbjTce/CuIB+67L8oMLnbfY0/50Y9/LKutttpgwt2qqsyePVs+/OEPy6/P+K3LrPj/zLPPkd332F1yucohwfqee+4p/77oouBFoxXdmCEBEmh7AtxBEiABEiABEiABEiABEiABEiABEiCB9ifAPSSBcUagcnV7nG34SDc3nijYYssthljttPPO/v79biLhyisul76+Pn//wPcf6Je4WXvNtQUfx4T1f/7rn1j42GijjeUXv/ylnxzAXz5859vflh1e+1r51Cc/KY89+qjX7LHnHnLEV4706/HNkV89SnbccUd/94XnX5ATjj9BXrfd9n7C46mnnpI566zja7whARIgARIgARIgARIgARIYOwS4JSRAAiRAAiRAAiRAAiRAAkMJdOyEw7/+/S9PYtq0abLyKjP9Or5zYe211/brF154oV/ed8+9fvmmnXbyS9zs++7KxzCdU/X9DSee9DUpFApSKpXkAwe+T37w/e/JwoWPy1//eoHssesu8vxzz6NdDjr4YL+Mbw7+yEf8KiYp9t5zT/nFz0+XJxY9IWf8+ley+267ybJly3ydNyRAAqkJUEgCJEACJEACJEACJEACJEACJEACJND+BLiHJEACY4xAx044nP3HM8uHYp999vHr73RLVfXrv//97/3yLxdc4JeYiMCEBO7sFn0M00svviiLnl6ElI+NNt7IL++5+2657rpr/Xp8s2z5cvnNb87wd6dOnSqTJkzw61NmLF0LAAAQAElEQVSmuPVJk/z67377Gz/R4O9ENy8ufkG++53vRve4IAESIAESIAESIAESIIHxQoDbSQIkQAIkQAIkQAIkQAIk0GkEOnbCARMFmDDAAd/rzW/GQvbdd1+/fOaZZ+SF55/z62ed+Ue/VFXBhATubL755ljILbfc6pfxTfy9DZtvsYVcfuVVK8THPv7xWCo77bqbX99558Evn8ad664dOkmBHOKqK6/AgkECjSNAJxIgARIgARIgARIgARIgARIgARIggfYnwD0kARIggRYT6NgJB3COJwy22nIr3JVttt3WL6+68kq/xM1LL70o+B4FrGNCYuaqMwV/oYD7f/7zn7Dw8apXbeiX8c0GG2wgtYGPb4rrm222mV/d6tWDY+POrbcOncBADnHPPXdjwSABEiABEiABEiABEmgjAtwVEiABEiABEiABEiABEiABEmg3Ah094fCXv5zvj+f0GdNlk002lXhC4A+//4PPxzdXXHa5X912u+1k330Hv78B39Nw4d//7vO4eTT6UmisP/zww3LMUUclxkknnuTz5513HqRy772D3xGBO/jLCCxro3Yyo7bO+w0nQEMSIAESIAESIAESIAESIAESIAESIIH2J8A9JAESIAESaDCBjp5wwIQBJg7A9Hvf+z4W0tvbJzfeeL1fj29+97vf+VX8ZcP+++/v1xcuXCh9fb1+HTdYf3Hxi1iVl15aLGec8evE+NnpP/X5BY896rWXX365X+Jmxx13xGKF2GnnnVfIMUECJEACJEACJEAC7U2Ae0cCJEACJEACJEACJEACJEACJDDeCHT0hMPy5T2CiQMctC222hILueuu2/2y+mbevFulZ/lyn9piy0Fd9ccu+YK7efiRB92tyKtfvY1svsWgzieim5132VX+dP6ffcxaay2fxZdCx94Hf+QjMn3Gyj4f3+DLpb/4xS/Gd8fGkltBAiRAAiRAAiRAAiRAAiRAAiRAAiTQ/gS4hyRAAiRAAiSQkUBHTziA1dVXXYVFOc7/81/K69Urt8+bV31Xzj7r7CH3ced7//d9wV9M5HI5+ctf/yoHvv8DMmXKVJkwYaJ87OOHyK/POENe+9odZCs3IfHkU0+hxccF5w9+tNOkSZPk3xddJG/e+y2Sz+dlt933kH9dcqmsNH261/GGBEiABEiABEiABGICXJIACZAACZAACZAACZAACZAACZDAWCPQ8RMOZ515VvmYYLLg7LMq98sFt/LnP1W+IBofu3TLLTe57ND/l1/2Hzn2mGN8cuKECfLNb31L7nvgAXnokUfkuOOPk66uLj8h8cXPf16KxaLX4ebwLx4m99xzD1Zl1qxZ8otf/lL++9gC+c1vfyvrr7++PFU1OeFFvCEBEiABEiABEiABEiABEiABEiABEhhtAhyfBEiABEiABEighkDHTzhg4gATCODyxJNPyrJlr2B1hTj/vHP9ZAEKD9x/HxaJccavfyUnnXiSLHjssSGTChA/9uij8t7/OUD++tcLcHdI7PvOd8rtt982JIc7t912i7x5rz3KY1dPVKA+1qI0UBItlUa8WfCAl2WEGjRWPW0eHvCy9P1L+6TYgP2BB7yscbAN2BarnjYPD3hZetSgsepp8/CAl6UvOWYIq542Dw+EpUcNYdXT5uGBsPSoIax62jw8EJa+2DNQfqxbmjR5jAEvS4s6wqqnzcMDYelRQ1j1tHl4ICw9agirnjYPD4SlRw1h1dPm4YGw9KghrHraPDwQlh41hFVPm4cHwtKjhrDqafPwQFh61BCV+vDW4IGwulFDWPW0eXggLD1qCKueNg8PhKVHDWHV0+bhgbD0qCGseto8PBCWHjWEVU+bhwfC0qOGsOpp8/BAWHrUEFY9bR4eCEuPGsKqp83DA2HpUUNY9bR5eCAsPWoIq542Dw+EpUcNYdXT5uGBsPSoIax62jw8EJYeNYRVT5uHB8LSo4aw6mnz8EBYetQQVj1tHh4IS48awqqnzcMDYelRQ1j1tHl4ICw9agirnjYPD4SlRw1h1dPm4YGw9KghrHraPDwQlh41hFVPm4cHwtKjhrDqafPwQFh61BBWPW0eHghLjxrCqqfNwwNh6VFDWPW0eXggLD1qCKueNg8PhKVHDWHV0+bhgbD0qCGseto8PBCWHjWEVU+bhwfC0qOGsOpp8/BAWHrUEFY9bR4eCEuPGsKqp83DA2HpUUNY9bR5eCAsPWoIq542Dw+EpUcNYdXT5uGBSKvvNF3rJxzGIOEN5q4rc2atLTu8Zntz65YtXy7rzJ7ldW/Z+82mDoWfnf5Tef2OO8jcddeRd79rP9lv33fJq9ZfX97w+h3l2muuhWSFwETH29/6Ntlsk038pMR79t9fNnrVq+Sdb3+HPPfsc+WxT/7aSSv0jqVEvlcbtjkhr1At6waEvJYsWCo6kNVxRT084LViZTAT2oZBRfrbkFeoln6EQWXIq1Sq/AXPoHr4tyGvUC3riCGvUK2R4/Q/3Su54sgn7OABL2vbWrU/HMc6AuImluzHCLmRGwjwPACF5AixCdWS3exsyCtUsx2TKyGvUC3Zzc6GvEI12zG5EvIK1ZLd7GzIK1SzHZMrIa9QLdnNzoa8QjXbMbkS8grVkt3sbMgrVLMdkyshr1At2c3OhrxCNdsxuRLyCtWS3exsyCtUsx2TK6XigEhyKfhayGgx06FtDtVMQ6MQ8grVDDszHfIK1UxDoxDyCtUMOzMd8grVTEOjEPIK1Qw7Mx3yCtVMQ6MQ8grVDDszHfIK1UxDoxDyCtUMOzMd8grVTEOjEPIK1Qw7Mx3yCtVMQ6MQ8grVDDszHfIK1UxDoxDyCtUMOzPdSC9zkHFa4IRDEw9csViUG2+8Xm666QZZvrwn1Ugvv/ySXHP1NXLdddeaf22RymiURIUX3CnlrqPhN+ARWTcDPQhxHt7LMPA1p4EWYcjMNHoQ9caZf+586e/tl1J/aVh/6YC/bEAvPOBlbVCr9qdV4xT7+3FF1b2RKPmw9tvKl+K/kHBL72UIfc1pynpDZ6XLfc7DexlCX3Oast7QWelyn/PwXobwpSufc+eauEmu4rC56YDrdfjhJcY/vw1uW8rbZeisdLnPeXgvQ+hrTlPWGzorXe5zHt7LEPqa05T1hs5Kl/uch/cyhL7mNGW9obPS5T7n4b0Moa85TVlv6Kx0uc95eC9D6GtOU9YbOitd7nMe3ssQ+prTQG9Igmn0IdyDQryXofa1aByvN3RWGj0IjmMRSs6DGYLckvlYWTBDkJtFKDkPZghyS+ZjZcEMQW4WoeQ8mCHILZmPlQUzBLgN9PdassGf6fy5XeYDZghwK+K9VLkydMXXyK0MBcwQ5FZGkmoFzBDklgpXWQRmCHIrI0m1AmaITuOWCk4LRa0eyl0dbvWQHK+dCRSWiHQvVMktdRea+4r+wikugKaNkutBLzzgJcY/1KCBFj1p/WMdetALD3gZw8iz1z4l8467VZ659WnpeXqp9C/tzRToQS884GWNg23AtmCbsG3xdqZdoge98IDXaI9TLPZLb2+PDAz0S7E44KKYMQZ8LzyKzsvaH9SgaZdxlt3zsjx1xmOy7MGlMvBCnwwscxyyhOtBr/dwXp3Crd3Og/ben6zPBdC7x4F7LsFjHWx4XoNJmiC3In/+uJ+9PA94HuD5gufBGD4P2vpxWnIXxvlzG4/BNMHHKR+nOE94HvA84HnQLtd3rJ9/nZLnhEOnHOkW7mdhqcjEBTmZ8nBeJj+QyxToQS886m0yNNCip5njPHvDU3LL4TfIFQf8Ry5+y78yBXrQC4+xsj+t4lZyF3r63aRD3/Jl0tuzNFOgB73wqMcNGmjR0w7jLLtviSw6/VF5/KQHZMFX780U6EEvPDqNW+PPg2SCHKfyWMZjDo89MEmmVclCA23Wxyj0wxkHPejNEujBNmJbK1uevAYNtOjJMga06EEvPJLdK1looEUPerMEetALj4pj8ho00KInyxjQoge98Eh2r2ShgRY96M0S6EEvPCqOyWvQQIueLGNAix70wiPZvZKFBlr0oDdLoAe98Kg4Jq9BAy16sowBLXrQC49k90oWGmjRg94sgR70wqPimLwGDbToyTIGtOhBLzyS3StZaKBFD3qzBHrQC4+KY/IaNNCiJ8sY0KIHvfBIdq9koYEWPejNEuhBLzwqjslr0ECLnixjQIse9MIj2b2ShQZa9KA3S6AHvfCoOCavQQMterKMAS160AuPZPdKFhpo0YPeLIEe9MKj4pi8Bg206MkyBrToQS88kt0rWWigRQ96swR60AuPimPyGjTQoifLGNCiB73wSHavZKGBFj3ozRLoQS88Ko7Ja9BAi54sY0CLHvTCI9m9koUGWvSgN0ugB73wqDgmr0EDLXqyjAEtetALj2T3ShYaaNGD3iyBHvTCo+KYvAYNtOjJMga06EEvPJLdK1looEUPerMEetALj4pj8ho00KInyxjQoge98Eh2r2ShgRY96M0S6EEvPCqOyWvQQIueLGNAix70wiPZvZKFBlr0oDdLoAe98Kg4Jq9BAy16sowBLXrQC49k90oWGmjRg94sgR70wqPimLwGDbToyTIGtOhBLzyS3StZaKBFD3qzBHrQC4+KY/IaNNCiZ3CMyvvcevfRg154JLszCwKccAAFBgmQAAmQAAmQAAmQAAmQAAmQwNgiwK0hARIgARIgARIgARIYdwQ44TDuDhk3mARIgARGnwC3gARIgARIgARIgARIgARIgARIgARIoP0JcA9JICsBTjhkJUY9CZAACZAACZAACZAACZAACYw+AW4BCZAACZAACZAACZAACYw5ApxwGHOHhBtEAiQw/glwD0iABEiABEiABEiABEiABEiABEiABNqfAPeQBEiglgAnHGqJ8D4JkAAJkAAJkAAJkAAJkMD4J8A9IAESIAESIAESIAESIAESaDkBTji0HPnoDai5vBS6J0rXhEnSPXFKpkAPeuFRbw/6p4j0zCnK0g0G5JWNipkCPeiFx1gZJ7dWt3TvOkMm7rOKTDlgtUyB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oBceSd7VOWigRU+WMaBFD3rhUe2ZtA4NtOhBb5ZAD3rhkeRdnYMGWvTEY6Rdoge98Kj2TFqHBlr0pPWPdehBLzySvKtz0ECLnrg/7RI96IVHtWfSOjTQoietf6xDD3rhkeRdnYMGWvTE/WmX6EEvPKo9k9ahgRY9af1jHXrQC48kb+ZaS4ATDq3lzdFIgARIgARIgARIgARIYDwT4LaTAAmQAAmQAAmQAAmQAAmQgEmAEw4mGhZIYLwR4PaSAAmQAAmQAAmQAAmQAAmQAAmQAAm0PwHuIQmQAAmMXQKccBi7x4ZbRgIkQAIkQAIkQAIkMN4IcHtJgARIgARIgARIgARIgARIoIMJcMKhgw9+p+0695cESIAESIAESIAESIAESIAESIAESKD9CXAPSYAESIAERo8AJxxGjz1HJgESIAESIAESIIFOI8D9JQESIAESIAESIAESIAESIAESaGMCnHBo44ObbdeoJgESIAESIAESIAESIAESIAESIAESaH8C3EMSIAESIAESaB4BTjg0jy2dSYAESIAESIAESCAbAapJgARIgARIgARIgARIgARIgARIYBwT4IRDyoNHGQmQAAmQAAmQAAmQAAmQAAmQAAmQQPsT4B6SAAmQAAmQAAkMnwAnHIbPjp0kQAIkQAIkQAKtJcDRSIAESIAESIAESIAESIAESIAESIAExjCBBk04jOE95KaRAAmQAAmQAAmQAAmQAAmQAAmQAAk0iABtSIAESIAESIAESMAmwAkHmw0rJEACJEACJDC+CHBrSYAESIAESIAESIAESIAESIAESIAE2p/AGN5DTjiM4YPDTSMBEiABEiABEiABEiABEiABEhhfBLi1JEACJEACJEACJNDJBDjh0MlHn/tOAiRAAp1FgHtLAiRAAiRAAiRAAiRAAiRAAiRAAiTQ/gS4h6NIgBMOowifQ5MACZAACZAACZAACZAACZBAZxHg3pIACZAACZAACZAACbQzAU44tPPR5b6RAAmQQBYC1JIACZAACZAACZAACZAACZAACZAACbQ/Ae4hCTSRACccmgiX1iRAAiRAAiRAAiRAAiRAAiSQhQC1JEACJEACJEACJEACJDCeCXDCYTwfPW47CZBAKwlwLBIgARIgARIgARIgARIgARIgARIggfYnwD0kARIYAQFOOIwAHltJgARIgARIgARIgARIgARa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SIAESIAESKB5BOhMAiRAAiRAAiRAAiRAAiRAAiRAAmOcACccGnCAaEECJEACJEACJEACJEACJEACJEACJND+BLiHJEACJEACJEACYQKccAjzYZUESIAESIAESGB8EOBWkgAJkAAJkAAJkAAJkAAJkAAJkAAJjDKBFkw4jPIecngSIAESIAESIAESIAESIAESIAESIIEWEOAQJEACJEACJEACnU6AEw6dfgZw/0mABEiABDqDAPeSBEiABEiABEiABEiABEiABEiABEig/QmM8h5ywmGUDwCHJwESIAESIAESIAESIAESIAES6AwC3EsSIAESIAESIAESaHcCnHBo9yPM/SMBEiABEkhDgBoSIAESIAESIAESIAESIAESIAESIIH2J8A9bDIBTjg0GTDtSYAESIAESIAESIAESIAESIAE0hCghgRIgARIgARIgARIYLwT4ITDeD+C3H4SIAESaAUBjkECJEACJEACJEACJEACJEACJEACJND+BLiHJDBCApxwGCFAtpMACZAACZAACZAACZAACZBAKwhwDBIgARIgARIgARIgARIY6wQ44TDWjxC3jwRIYDwQ4DaSAAmQAAmQAAmQAAmQAAmQAAmQAAm0PwHuIQmQQB0CnHCoA4hlEiABEiABEiABEiABEiCB8UCA20gCJEACJEACJEACJEACJDDaBDjhMNpHgOOTQCcQ4D6SAAmQAAmQAAmQAAmQAAmQAAmQAAm0PwHuIQmQQMcT4IRDx58CBEACJEACJEACJEACJNAJBLiPJEACJEACJEACJEACJEACJNBsApxwaDZh+pNAfQJUkAAJkAAJkAAJkAAJkAAJkAAJkAAJtD8B7iEJkAAJtD0BTji0/SHmDpIACZAACZAACZAACdQnQAUJkAAJkAAJkAAJkAAJkAAJkMBICXDCYaQE2d98AhyBBEiABEiABEiABEiABEiABEiABEig/QlwD0mABEiABMY9AU44jPtDyB0gARIgARIgARIggeYT4AgkQAIkQAIkQAIkQAIkQAIkQAIkUI8AJxzqERr7dW4hCZAACZAACZAACZAACZAACZAACZBA+xPgHpIACZAACZDAmCfACYcxf4i4gSRAAiRAAiRAAmOfALeQBEiABEiABEiABEiABEiABEiABEig/ScceIxJgARIgARIgARIgARIgARIgARIgATanwD3kARIgARIgARIYNQJcMJh1A8BN4AESIAESIAE2p8A95AESIAESIAESIAESIAESIAESIAESKD9CXDCof2PMfeQBEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABJpOgBMOTUfMAUiABEiABEigHgHWSYAESIAESIAESIAESIAESIAESIAE2p9A++8hJxza/xhzD0mABEiABEiABEiABEiABEiABOoRYJ0ESIAESIAESIAESGDEBDjhMGKENCABEiABEmg2AfqTAAmQAAmQAAmQAAmQAAmQAAmQAAm0PwHu4fgnwAmH8X8MuQckQAIkQAIkQAIkQAIkQAIk0GwC9CcBEiABEiABEiABEiCBugQ44VAXEQUkQAIkMNYJcPtIgARIgARIgARIgARIgARIgARIgATanwD3kATGPgFOOIz9Y8QtJAESIAESIAESIAESIAESGOsEuH0kQAIkQAIkQAIkQAIkQALCCQeeBCRAAm1PgDtIAiRAAiRAAiRAAiRAAiRAAiRAAiTQ/gS4hyRAAqNPgBMOo38MuAUkQAIkQAIkQAIkQAIk0O4EuH8kQAIkQAIkQAIkQAIkQAIdQGDUJxy23u51wiADngOjeQ5wbJ5/PAd4DvAc4DnAc4DnAM8BngM8B3gO8BzgOcBzoP3PAR5jHmOeA+P1HBhP8xSjPuEwnmBxW0mABEiABEiABEiABEigKQRoSgIkQAIkQAIkQAIkQAIkQAJtQGDUJhzm3XKDMMhgPJwD3EaepzwHeA7wHOA5wHOA5wDPAZ4DPAd4DvAc4DnAc6D9zwEeYx5jngM8B8b6OTAe5iNGbcJhPMDhNpIACZAACZAACZAACYwJAtwIEiABEiABEiABEiABEiABEiCBcUCAEw7j4CCN7U3k1pEACZAACZAACZAACZAACZAACZAACbQ/Ae4hCZAACZAACdQnwAmH+oyoIAESIAESIAESIIGxTYBbRwIkQAIkQAIkQAIkQAIkQAIkQAJjgAAnHJp8EGhPAiRAAiRAAiRAAiRAAiRAAiRAAiTQ/gS4hyRAAiRAAiRAAiKccOBZQAIkQAIkQAIk0O4EuH8kQAIkQAIkQAIkQAIkQAIkQAIkQAItIDDKEw4t2EMOQQIkQAIkQAIkQAIkQAIkQAIkQAIkMMoEODwJkAAJkAAJkEAnEOCEQyccZe4jCZAACZAACYQIsEYCJEACJEACJEACJEACJEACJEACJND+BFqwh5xwaAFkDkECJEACJEACJEACJEACJEACJEACIQKskQAJkAAJkAAJkEA7EOCEQzscRe4DCZAACZBAMwnQmwRIgARIgARIgARIgARIgARIgARIoP0JcA8bQIATDg2ASAsSIAESIAESIAESIAESIAESIIFmEqA3CZAACZAACZAACZDAeCDACYfxcJS4jSRAAiQwlglw20iABEiABEiABEiABEiABEiABEiABNqfAPeQBFIQ4IRDCkiUkAAJkAAJkAAJkAAJkAAJkMBYJsBtIwESIAESIAESIAESIIGxQIATDmPhKHAbSIAE2pkA940ESIAESIAESIAESIAESIAESIAESKD9CXAPSYAEHAFOODgI/E8CJEACJEACJEACJEACJNDOBLhvJEACJEACJEACJEACJEACrSDACYdWUOYYJEACNgFWSIAESIAESIAESIAESIAESIAESIAE2p8A95AESKAjCHDCoSMOM3eSBEiABEiABEiABEiABGwCrJAACZAACZAACZAACZAACZBAIwhwwqERFOlBAs0jQGcSIAESIAESIAESIAESIAESIAESIIH2J8A9JAESIIG2IMAJh7Y4jNwJEiABEiABEiABEiCB5hGgMwmQAAmQAAmQAAmQAAmQAAmQQBoCnHBIQ4masUuAW0YCJEACJEACJEACJEACJEACJEACJND+BLiHJEACJEAC44IAJxzGxWHiRpIACZAACZAACZDA2CXALSMBEiABEiABEiABEiABEiABEiABEOCEAyi0b3DPSIAESIAESIAESIAESIAESIAESIAE2p8A95AESIAESIAExgQBTjiMicPAjSABEiABEiABEmhfAtwzEiABEiABEiABEiABEiABEiABEugMAp094dAZx5h7SQIkQAIkQAIkQAIkQAIkQAIkQAKdTYB7TwIkQAIkQAIk0BICnHBoCWYOQgIkQAIkQAIkYBFgngRIgARIgARIgARIgARIgARIgARIoD0IhCYc2mMPuRckQAIkQAIkQAIkQAIkQAIkQAIkQAIhAqyRAAmQAAmQAAmQQEMIcMKhIRhpQgIkQAIkQALNIkBfEiABEiABEiABEiABEiABEiABEiCB9ifQHnvICYf2OI7cCxIgARIgARIgARIgARIgARIggWYRoC8JkAAJkAAJkAAJkEAqApxwSIWJIhIgARIggbFKgNtFAiRAAiRAAiRAAiRAAiRAAiRAAiTQ/gS4h+ODACccxsdx4laSAAmQAAmQAAmQAAmQAAmQwFglwO0iARIgARIgARIgARIgAU+AEw4eA29IgARIoF0JcL9IgARIgARIgARIgARIgARIgARIgATanwD3kATGBgFOOIyN48CtIAESIAESIAESIAESIAESaFcC3C8SIAESIAESIAESIAES6BACnHDokAPN3SQBEkgmwCwJkAAJkAAJkAAJkAAJkAAJkAAJkED7E+AekgAJtIYAJxxaw5mjkAAJkAAJkAAJkAAJkAAJJBNglgRIgARIgARIgARIgARIoE0IcMKhTQ4kd4MEmkOAriRAAiRAAiRAAiRAAiRAAoxaPEAAAABDSURBVCRAAiRAAu1PgHtIAiRAAo0hwAmHxnCkCwmQAAmQAAmQAAmQAAk0hwBdSYAESIAESIAESIAESIAESGCcEPh/AAAA//9iFSpHAAAABklEQVQDABIFgzkFEnURAAAAAElFTkSuQmCC" class="kg-image" alt="The Week AI Broke My Confidence But Made Me a Better Engineer" loading="lazy"><figcaption>my github commit tally for first 3 months for 2026</figcaption></figure><figure class="kg-card kg-image-card kg-card-hascaption"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABgwAAAGwCAYAAAB1v04eAAAQAElEQVR4AeydCZxO1RvHnzNjX7JFSXbJVmmnEiopFa0oLUJp+bchrWRLK1pRIS2itIcUQsoSiiSSLKGFNmU3Zv7nd+a9d+77znvu+75j5p133vn5OPee+zzPec4533Punfuec++5KWUrVMlgIAP2AfYB9gH2AfYB9gH2AfYB9gH2AfYB9gH2gaTuA/ztz/EP9gH2AfYB9gH2AfaBiH0gRfiPBEiABEiABEiggBNg8UmABEiABEiABEiABEiABEiABEiABJKfQN7XkBMGec+YOZAACZAACZAACZAACZAACZAACZCAPwFqSYAESIAESIAESCABCHDCIAEagUUgARIgARJIbgKsHQmQAAmQAAmQAAmQAAmQAAmQAAmQQPITSIYacsIgGVqRdSABEiABEiABEiABEiABEiABEshLAvRNAiRAAiRAAiRAAoWCACcMCkUzs5IkQAIkQAJ2AtSQAAmQAAmQAAmQAAmQAAmQAAmQAAkkPwHWMBoCnDCIhhJtSIAESIAESIAESIAESIAESIAEEpcAS0YCJEACJEACJEACJJArBDhhkCsY6YQESIAESCCvCNAvCZAACZAACZAACZAACZAACZAACZBA8hNgDRODACcMEqMdWAoSIAESIAESIAESIAESIAESSFYCrBcJkAAJkAAJkAAJkEABIcAJgwLSUCwmCZAACSQmAZaKBEiABEiABEiABEiABEiABEiABEgg+QmwhoWFACcMCktLs54kQAIkQAIkQAIkQAIkQAIkEI4AZSRAAiRAAiRAAiRAAiQQIMAJgwAI7kiABEggGQmwTiRAAiRAAiRAAiRAAiRAAiRAAiRAAslPgDUkgdwiwAmD3CJJPyRAAiRAAiRAAiRAAiRAAiSQ+wTokQRIgARIgARIgARIgATiRoATBnFDzYxIgARIIJQAj0mABEiABEiABEiABEiABEiABEiABJKfAGtIAgWHACcMCk5bsaQkQAIkQAIkQAIkQAIkQAKJRoDlIQESIAESIAESIAESIIEkIsAJgyRqTFaFBEggdwnQGwmQAAmQAAmQAAmQAAmQAAmQAAmQQPITYA1JgASyCHDCIIsFYyRAAiRAAiRAAiRAAiRAAslFgLUhARIgARIgARIgARIgARKIgQAnDGKARVMSIIFE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ALNs4enhT5h2RJkdZbEixeS44080Act44XxA2b9bsVz+/Tfz2x0162a+AYMJlH/+Dp7cWfvjD4L6GlbPPi3P6bZH+Z54dEjYSTonX+5FOGHAXkACJEACJEACJEACJEACJEACJEACJEACJEACeURg546dggF3PPWMp7hzsm46lunBIDAGRvOomK7b9PR02bVrpwmuMA8iWGp844Z18s/ff0XtHZMw4IDB46gTaUNww0THgbT9+ii2/0izedNGiTXP2HKJbL1v7x5BOf7684/Ixh4LhxnSi4hHY4/u27fHtH+G97F9j3k8+khaeppcfMmlckXHznLz7XeK9zsg+IbFCSedLGe2bGVK9esvv5glrcxByAZt/8svm+W33+w2IUkK/SEnDAp9FyAAEiABEiABEiABEiABEiCBgk+ANSABEiABEiABEiCB5CGASYnP52a+qYKlmHr1uUf6DxgiffreL/0HDpZLL+soWJ4KdjNnfJI8FU+AmnDCIAEagUUgARIgAV8CVJIACZAACZAACZAACZAACZAACZAACSQ/AdYwiMDsWTPko/ffE7wlAEWx4sWlfIUKiJqwc8cOee6ZEYLlh4yAm1whwAmDXMFIJyRAAiRAAiRAAiRAAiRAAiRgJ0ANCZAACZAACZAACZBA7AQWLZovDw/oLy+OHilTPvpAZs+aKfjw8aMPDzbf99j6+2+xO2UKXwKcMPDFQyUJkAAJRCRAAxIgARIgARIgARIgARIgARIgARIggeQnwBrmE4F9afvk543rZeH8L2TWzE/kuxXLZceOf/OpNMmfLScMkr+NWUMSIAESIAESIAESIAESIAFfAlSSAAmQAAmQAAmQAAmQAAmAACcMQIGBBEggeQmwZiRAAiRAAiRAAiRAAiRAAiRAAiRAAslPgDUkARLIFQKcMMgVjHRCAiRAAiRAAiRAAiRAAiSQVwTolwRIgARIgARIgARIgARIID4EOGEQH87MhQRIIDwBSkmABEiABEiABEiABEiABEiABEiABJKfAGtIAiRQQAhwwqCANBSLSQIkQAIkQAIkQAIkQAKJSYClIgESIAESIAESIAESIAESSBYCnDBIlpZkPUggLwjQJwmQAAmQAAmQAAmQAAmQAAmQAAmQQPITYA1JgARIIECAEwYBENyRAAmQAAmQAAmQAAmQQDISYJ1IgARIgARIgARIgARIgARIIFoCnDCIlhTtSCDxCLBEJEACJEACJEACJEACJEACJEACJEACyU+ANSQBEiCBuBHghEHcUDMjEiABEiABEiABEiABEgglwGMSIAESIAESIAESIAESIAESSBwCnDBInLZgSZKNAOtDAiRAAiRAAiRAAiRAAiRAAiRAAiSQ/ARYQxIgARJIIgKcMEiixmRVSIAESIAESIAESIAEcpcAvZEACZAACZAACZAACZAACZBAYSLACYPC1Nqsq5cA4yRAAiRAAiRAAiRAAiRAAiRAAiRAAslPgDUkARIgARKIgQAnDGKARVMSIAESIAESIAESIIFEIsCykAAJkAAJkAAJkAAJkAAJkAAJ5CYBThjkJk36yj0C9EQCJEACJEACJEACJEACJEACJEACJJD8BFhDEiABEiCBhCLACYOEag4WhgRIgARIgARIgASShwBrQgIkQAIkQAIkQAIkQAIkQAIkULAIcMKgYLVXopSW5SABEiABEiABEiABEiABEiABEiABEkh+AqwhCZAACZBAISPACYNC1uCsLgmQAAmQAAmQAAlkEuCWBEiABEiABEiABEiABEiABEiABIIJcMIgmEdyHLEWJEACJEACJEACJEACJEACJEACJEACyU+ANSQBEiABEiCBXCbACYNcBkp3JEACJEACJEACJJAbBOiDBEiABEiABEiABEiABEiABEiABOJNICEmDFJSikilSlWkdt2jpUHjY+XYpidJ0xNPTdbAerFt2QfYB9gH2AfYB9gH2AfYB9gH2AfYB9gH2AeSvw+wjdnG7APsA+wD7ANBfQDj3g0aH2fGwStWqiwpKQkxPB80J5GvJSpSpJhUO7KmNDnueKleq7aUK19eSpQoKSmpqUGF5AEJkAAJkAAJkAAJJBYBloYESIAESIAESIAESIAESIAESIAEYiOQkpqqx79LmHHwGrXq6HHxE+SII2tIkSJFYnOUh9b5NmFwSLkK0rDJsVL5sMMFMynb//lbfvtls6xb+4N8t/wbWbZ0Uf4E5kvu7APsA+wD7APsA+wD7APsA+wD7APsA+wD7APJ3wfYxmxj9gH2AfYB9oE49wGMe2P8+7dftgjGw1NSUqXKYVX1OPlxUvaQ8nk4DRC963yZMKhcparUqVdfUvWMyr69e2XN6u9l/U9r5Ldft8i/2/+RtLR90deAliRAAiRAAiRAAiQQQoCHJEACJEACJEACJEACJEACJEACJJBoBDDujfHv337dbMbDf9Tj4vv27dXj5EWk7lFHy6FVDs/3Isd9wqBCxUOlWvUapuJ/bNsqq1aukF07/zPHUWxoQgIkQAIkQAIkQAIkQAIkQAIkQAIkkPwEWEMSIAESIAESSHoCO/W4+OqV38off2w1dT2yek0pr8fPzUE+beI6YVCiRCmpWbuuqeofW3+XzT+vl4yMA+aYGxIgARIgARIggcJCgPUkARIgARIgARIgARIgARIgARIgARIAgfT0dNm8cb1s2/Y7DqWWHj8vXrykiefHJncnDCLU4PAjqhmLvXv2yK+bN5o4NyRAAiRAAiRAAiRAAiRAAiRAAiRAAgWMAItLAiRAAiRAAiSQqwR+2bxJsHw/nDrj6IjHO8RtwqBIkWJSrnwFycjIkA3r18oBvY93ZZkfCZAACZAACZBAZAK0IAESIAESIAESIAESIAESIAESIAESiC+BjPQDsnH9OjN+Xr5CRUktUjTPCxAug7hNGJSvWFGUUoJ1mXbv2hmuLJSRAAmQAAmQAAmQAAmQAAmQAAmQAAkcPAF6IAESIAESIAESKIAEdu78V3bpsXOllFTQkwb5UYX4TRgEKrhrJycL8qOhmScJkAAJkECyEGA9SIAESIAESIAESIAESIAESIAESIAEkpXArh07TNXKVaho9vHexG3CoFSpUqZuu3ZwwsCA4IYESIAESIAESIAESIAESIAESKBwEmCtSYAESIAESIAESMBCYOeO/4ymVMnM8XRzEMdN3CYMUlJSTbV27Nhu9tyQAAmQAAmQQDISYJ1IgARIgARIgARIgARIgARIgARIgASSn0Be1XDnzsw3DFRgPD2v8rH5jduEgVOAtLQ0J8o9CZAACZAACZAACZAACZAACZAACSQaAZaHBEiABEiABEiABPKNwP79+0zeKSnK7OO9ifuEQbwryPxIgARIgARIIIsAYyRAAiRAAiRAAiRAAiRAAiRAAiRAAslPgDXMKQFOGOSUHNORAAmQAAmQAAmQAAmQAAmQAAnEnwBzJAESIAESIAESIAESyDMCnDDIM7R0TAIkQAIkECsB2pMACZAACZAACZAACZAACZAACZAACSQ/AdYwcQlwwiBx24YlIwESIAESIAESIAESIAESIIGCRoDlJQESIAESIAESIAESKMAEOGFQgBuPRScB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aAObAXRK5VY/YPvYOPvJ0QY2fbJd3zCGEY/xkHhxYz62nisCNjYt+rxSyXPdsdWzoMrtV/KCWiOWO64E8KRPbmSIwT8/X0rl1kVEiVLKWmSl7DprIihCglLKN58ipYuGpMjZYYrOx8+XUipnjkNSKaX861NUhaTI2aGpj48vpXInH6WUb32UUjmrQEgqpVThyidVhRDI2WHE60G88tHtl7MaBKdSShWufqDrG0wgZ0dKkVtOyClFbuQm5pqjlBLbP797LluacPKI12ufMoTzZ5MppUydrHr+XQiLRqkI3LQ+bMIYhUr551PE594ulqwi3ieyH4TFqZR/+yilwqaLVaiU8j9PtT5Wn+HslWI+4bhEkilFbpEYhdMrZeEWMFZKBWIHt1NK+Z8/SXZ98xvDiIWk+bvgM7YSt/udeLVPsuWj+30s7W2zVSrC+aP1trSxyJXyzycWXwXBlhMGBaGVWEYSIAESIAESIAESIIE8J8AMSIAESIAESIAESIAESIAESKCwE+CEQWHvAYWj/qwlCZAACZAACZAACZAACZAACZAACZBA8hNgDUmABEiABA6SACcMDhIgk5MACZAACZAACZAACcSDAPMgARIgARIgARIgARIgARIgARLIawKcMMhrwvQfmQAtSIAESIAESIAESIAESIAESIAESIAEkp8Aa0gCJEACJJDwBDhhkPBNxAKSAAmQAAmQAAmQQOITYAlJgARIgARIgARIgARIgARIgAQKPgFOGBT8NszrGtA/CZAACZAACZAACZAACZAACZAACZBA8hNgDUmABEiABEhAOGHATkACJEACJEACJEACSU+AFSQBEiABEiABEiABEiABEiABEiCByAQ4YRCZUWJbsHQkQAIkQAIkQAIkQAIkQAIkQAIkQALJT4A1JAESIAESIIE4EOCEQRwgMwsSIAESIAESIAES8CNAHQmQAAmQAAmQAAmQAAmQAAmQAAkkAgFOGORtK9A7CZAACZAACZAACZAACZAACZAACZBA8hNgDUmABEiABEggKQhwwiApmpGVIAESIAESIAESyDsC9EwCJEACJEACJEACJEACJEACJEAChYNA4Z4wKBxtnKe1zDiQISoj46DzgA/4sjnK0Hkg2PTRyuEDwWYPHYJNH60cPhBs9mk790u6rpNNH60cPuDLZo8yINj00crhA8Fmn7Y/I/fqo33Z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84JN6dKlZfiIEdLh4ktwyEACJEAC+USA2ZIACZAACZAACZAACZAACZAACZAACSQ/AdaQBIIJZI6KB8uS+uixRx4z9StZsqRc0amziYduunS52ohWrVol2//ZbuKhmxNPPFlGvTDaiPfv3y+j9cRBizPOkC5XXSWffPKJkZcpU0ZmzpolRYsWM8feTdGiRQX6iW+8IWe3bi0nNG0qr732mmsyePAQN84ICZAACZAACZAACZAACZAACcRMgAlIgARIgARIgARIgARIIEYChW7CYMmSJbJ161aD6bb//c/svZuWrVpLufLljGjE8OFmH25zz733um8G3HrLLfLwkMGyYf06+XzuHOnR7XqZMWOGSValShU5//zzTTx088orr0jfu/vImjU/yLZtW+X+e+8R5w0IvKUQas9jEiABEnAIcE8CJEACJEACJEACJEACJEACJEACJJD8BFhDEog3gUI3YQDA48aOxU5q16kjod8ZuKfvPUa3Y8cO+XjaVBMPtzn66KONePXq1WHtMGmQkZFhbFq2bGX2oZsRw58MFcmnn2RONEBRp0497BhIgARIgARIgARIgARIgASSjwBrRAIkQAIkQAIkQAIkQAIJR6BQThi8+MILgmWE0Br9+vXDzoSKlSpKk2OPMfE3J00y+3AbfIPAeQNg9apV4UwkPT1d/t3+r9E1PeF4s/du9u3bL3/+8adXZOKbN20ye2xKlCiOHQMJkECBI8ACkwAJkAAJkAAJkAAJkAAJkAAJkAAJJD8B1pAEko9AoZww2L9/n3z22WemNc8+5xxJTU018b597xWllODNgGFPZn/63xjpTb16Rxk7HZU1a9ZgFzZs3Za59FHVqlWz6Q8cSMsmgyAt7QB2DCRAAiRAAiRAAiRAAiRAAvlJgHmTAAmQAAmQAAmQAAmQQCEkUCgnDNDOQ4c8jJ3g48Pde9xo4pdceqnZf/XVV/Lff5lvBxhByOann9aaSQWIa9eug13YcGilQ43c+WaCOeCGBEgg3wmwACRAAiRAAiRAAiRAAiRAAiRAAiRAAslPgDUkARKInUChnTBYt26trF+3zhDrcWN3ufiSS6VUqVLm+JGHh5q9bXPgwAHZ/s92o27UqKHZh9uUK1/OiJcvW2b23JAACZAACZAACZAACZAACeQKATohARIgARIgARIgARIgARLIAwKFdsIALJ997jnspOrhR8jAgYNMHG8DLF262MT9Nj+u/cGoGzVuLKedfpqJezfDhz8l+NYBZJ9//jl2DCRAAlERoBEJkAAJkAAJkAAJkAAJkAAJkAAJkEDyE2ANSYAEEpFAoZ4wmPzmJNm9e7dpl4qVKpr92DFjzD7S5umnnjHLEiml5NXX3pCu13eTsmUPkVq168jQRx+TKzp1NC7+3b5dpk2dauLckAAJkAAJkAAJkAAJkEChIMBKkgAJkAAJkAAJkAAJkAAJFEgChXrCAC32wfvvY2fC/v375YXRo0w80mbunNnywH33G7PixYvJ4CFD5PvVq2XeF1/INddcY+R79+6Tc9u00ZMSu8wxNySQDARYBxIgARIgARIgARIgARIgARIgARIggeQnwBqSAAkUTgKFYsIA3xywNe+jjw41bwpA/9msWRJqm5GRAZWkZxwwe+/mtddekYf695efN26U9PR0V7Vn715ZvvwbueTiDrJly2ZXjkh6RpYdjkPDgfSsfNLS0kLVCXecofkgHGzB4APB5gc6BJs+Wjl8INjsMw5kiNJ1sumjlcMHfNnsUQYEmz5aOXwg2OyhQ7Dpo5XDB4LNHjoEmz5aOXwg2OyhQ7Dpo5XDB4LNHm2HNrTpo5XDB3zZ7FEGBJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjswRRsbfpo5fABXzZ7lAHBpo9WDh8INnvoEGz6aOXwgWCzhw7Bpo9WDh8INnswBVubPlo5fMCXzR462Nj00crhA75s9qgrgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz2GRkZ7v2vzSYaOfJAsNni3MI5ZtNHK4cP+LLZowwINn20cvhAsNmjDCiLTR+tHD7gy2aPMiDY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZg8dgk0frRw+EGz20CHY9NHK4QPBZo9rEq5NNn20cviAL5s9yoBg00crhw8Emz10CDZ9tHL4QLDZo66os00frRw+4MtmDx1sbPpo5fABXzZ71BXBpo9WDh8INvv0PQdy7T4Evmz5oAwINn20cvhAsNmDKdja9NHK4QO+bPbQwcamj1YOH/Bls0ddEWz6aOXwgWCzhw7Bpo9WDh8INnvoEGz6aOXwgRCtfUG3KxQTBu+/965Ur3aECfv37wtqsz//+FNqHFnN6Hp07xakw0Gnjpcb3SknnoTDbGHc2DFy+mnNpXbNGnLpxZdIyxZnylF1asuF7S6QFd8uz2bf/fquxl/9enWz6SD4ZPrHRo/yrlnzA0QJHTIiTIDEUng/X366WPKArZ+v1H0KJrkS/Hz5lSHWzIN9Baf20wVbRj7y8+Wni+w52MLPl58u2EvkIz9ffm0X2XOwhZ8vvzIEe4l85OfLTxfZc7CFny8/XbCXyEd+vvyYRvYcbOHny68MwV4iH/n58tNF9hxs4efLTxfsJfKRny8/ppE9B1v4+fLTBXuJfOTny6+ukT0HW/j58tMFe4l85OfLTxfZc7CFny8/XbCXyEd+vvx0kT0HW/j58tMFe4l85OfLTxfZc7CFny8/XbCXyEd+vvzOrciegy38fPmVIdhL5CM/X35liOw52MLPl18Zgr1EPvLz5aeL7DnYws+Xny7YS+QjP19+usiegy38fPnpgr1EPvLz5aeL7DnYws+Xny7YS+SjDM/Db6HWuZqPz29Q5hNKPuvYj43fNSnLQ3QxP19+ZYjOe5aVny8/XZaH6GJ+vvzqGp33LCs/X3ZdVvpoY36+/OoarX/Hzs9X2tZ9kpKe4ZjmeA8f8GVz4FcGWxqb3M+XH1ObP5vcz5efzubPJvfz5VdXmz+b3M+Xn87mzyb38+Wns/mzyXPTly2PRJEXigmDeMBOT0+XxYsXybp1a+ORXcLkkY63IDIyzOxwht7HWjCkQdAOxPiyODA67R+2CBYzqxhpECLlU+RvfUqki3nLALOuEuM/pEEQ7cP4sqSPV32YT3ADoA8gsB8Ec4l0BGYIkbjFq7+Zc0ufYzjXECKVP1SPNAg8T0PJ+B+jDyBE6gfe9vH3GF6LtkGI1D7efIx9eHdWKdIgRMonXv2a+QQ3FfoaQqT+lrTcAvc8wVQiH4EZQqJwS7bzNNnqw/Mn+JzCuYOQKOdPQWyfA2nBD+d5Cacn2e/GZKsPr2/e3ir6MpA5xqEjvuMU8eIWr3zi1a///fxPyUgTUQfSNeLYJw5wrTZptQ/4Esu/eNUnXu0Tr3zixS3Z8rF0wwIr1qOjBbbsLHgCEEhPT5N9+/bIgQNpkp5+QIf0GMMBkxY+0rUvW5Wgg01e51Nkh0ixLUpSduobhP3p5g+Y0n/Eog0ZOg3Swgd8Scg/5zBe9WE+of0xuv6GtkMboi3RptG2v2OHNEgLH/DltHvonu3D9kGfSLZ+gD6Pvo9zwDknYtlHe/5480GaWPKALdKgjCgrfKEtwoVkax/WJ2fXHXLLGTecWzjHcK7hnMO5F0tAGqSFD/gKd45CFq/2QRlQFpQJZYulLrBFGqSFD/hC2cOFeNWH+eSsX5ObnRsG8cL1acjIzc4NbMAoXICOv4O97KL7PZco3HDt9wvR/l3A3wz87cDfEKTx8xlOhzRICx/wFa6vQRYvbru//09+H/+z7P5xpxz4e78c2K3bNZag0yCt8aF9oezhQrzqA6ZgC8ZgHa4N/GRIg7TwAV/h6gIZdLCBLdL4+QynQxqkhQ/4gs9wIV7cki2fcCwLsowTBgW59RKk7Bl6oiBNTxrs37tb9u3ZGVNAGqSFj0jVgQ1skSYv8ymyU6TEphQp/VOqlFqTElNAGqSFj0SpT7y4JVs+aEO0JdqU/WC34NxDGydKv2b7ZF1rcU1M1PaJ9dyBPc45nHto40j9DTawRRqkjSUgDdLCR6R80PfBGKzz8u8P80nsfu1pn5juddBn0HfQh+CjsPU3nGM413DOxXKOwhZpkBY+EoUbyoIyoWwoYywBaZAWPhKlPuiT6Jvoo+irsQSkQVr4YH2yrl+RGJLbHgGDSJxC9UjD/pa3v7dxbcI1CteqWK5tsEUapIWPwnY9QJ1RdzAAi1gC0iAtfETiBhvYJU1+PQAAEABJREFUIk0secAWaZAWPiLlg2s6zjWcc6HnYaRjpEFa+IiUz+7VO+S3FzbK5sFrZNP9q2IKSIO08BEpH5QFZULZIpU/VI80SAsfkfIBWzAGazCPJSAN0sJHouSDOqPuYBDKJdIx0iAtfESqD2xgizSR/IbqkQZp4SNR8olUjoKk54RBQWotljWPCdA9CZAACZAACZAACZAACZAACZAACZBA8hNgDUmABEiABGwEOGFgI0M5CZAACZAACZAACZBAwSPAEpMACZAACZAACZAACZAACZAACeSYACcMcoyOCeNNgPmRAAmQAAmQAAmQAAmQAAmQAAmQAAkkPwHWkARIgARIIP8IcMIg/9gzZxIgARIgARIgARIobARYXxIgARIgARIgARIgARIgARIggQQmwAmDBG6cglU0lpYESIAESIAESIAESIAESIAESIAESCD5CbCGJEACJEACyUyAEwbJ3LpxqltaaZE91dNlZ90Dsqt+ekwBaZAWPiIVV6WkSpFiJaRo8ZJSrETpmALSIC18MJ/o2ZFbCfY3fa6xH7Af4JrLflBI+oE+59HetsB+wH6AvhFLP8A9Hu71cM/H+8SS5l6W96PR34vG2t/AFvf86KNIG0tAGqSFj0i/F9ivs9owFm5gC8ZIE0vbwBZpkBY+IrUPbGCLNEgbS0AapIWPSPmwH7AfoI+gr6DPoO/E0tdgizRICx/w5Rfi1d/ilU9K1WJSrHV5KdGhopS+onJMAWmQFj78mEGXbPVBnVF3MMhLbuiT6Jvoo+irsQSkQVr4QBv4BdjAFmliyQO2SIO08OGXB3SwgS3SIG0sAWmQFj7gq7AEThgUkpbOq2qmlRHZVy1D0ksrUUVTJCM1toA0SAsf8GUrZ0pKESmmJwtSU4tIip44SElJ0ftYQqqk6rTwAV/MJ1p25JbC/qbPNfYD9gNcM9gP2A/YD3AvwX4QfT/AvR3u8XCvh3s+3ifyOpoM5w/7Na4B3lA4+3Wi94MU9/dy4Wwf/ObHb/9k+bsdr/4Wr3xSqxWXEi3KS9HDi0tK6aKiiqXGFJAGaeEjVfuyje8kW31QV9QZdU/JQ27Jdv7Eqz62flhQ5SkFteAsd2IQSKuQLqJ7UYZSghBrqZAGAT6ML4uDlCJFRHQeSim9UxLrP6VUZjq9N74sDoxO2ygVsLfY2cRKBdLpvfFlMTQ6baNUwN5iZxMrFUin98aXxdDotI1SAXuLnU2sVCCd3htfFkOj0zZKBewtdjaxUoF0em98WQyNTtsoFbC32NnESgXS6b3xZTE0Om2jVMDeYmcTKxVIp/fGl8XQ6LSNUgF7i51NrFQgnd4bXxZDo9M2SgXsLXY2sVKBdHpvfFkMjU7bKBWwt9jZxEoF0um98WUxNDpto1TA3mJnEysVSKf3xpfF0Oi0jVIBe4udTaxUIJ3eG18WQ6PTNkoF7C12NrFSgXR6b3xZDI1O2ygVsLfY2cRKBdLpvfFlMTQ6baNUwN5iZxMrFUin98aXxdDotI1SAXuLnU2sVCCd3htfFkOj0zZKBewtdjaxUoF0em98WQyNTtsoFbAPb2eVKhVIp/fGl8XS6LSNUgF7i51NrFQgnd4bXxZDo9M2SgXsLXY2sVKBdHpvfFkMjU7bKBWwt9jZxEoF0um98WUxNDpto1TA3mJnEysVSKf3xpfF0Oi0jVIBe4udTaxUIJ3eG18WQ6PTNkoF7C12NrFSgXR6b3xZDM29He8TXTpKRcfNMA3YKqXc9NFGlFK879UMouXl2CkVHTf2a4dY5l4pL7fUTGGYbbL1a/aD4EZWytsP9G/3YLV7lGz9IF71iVd/i1c+RY4uKSpV95kUJSlKSaz/kEalKIEP+LKlT7b6oK6oM+qeopSt2lY50iAtfMCXzTBe/TrZ8rHxLKhyfQtfUIueTOUuuHU5UCwjRxMF4WoMX+HkkCmVIkrFfkFE2tCgtK9QmXMMnVLMx+Hh3YON99gbh04pcvMyceJg48RD99ApRW6hXHAMNtiHC9ApRW42NuHkkJEbKIQPYBNeI6L03wyl2N8kzD+wCSM2IuiUIjcDI2QDNiEi9xA6pZKHG+7tzIMhbg1zHoEvW+pk48b62FpaROlrslj+QadU3p8/6Ivs1+EbQSn7hIHSbadU3rdPvPI5uH4QzA++giVZR/GqD/PJYh4aA5tQmXMMnVJ536/RR+Jx3YlXPnJIEVEpB88tAy60L6c9QvfJVp94cYtXv062fEL7X0E/TinoFWD585eA0rPCuVGCDKXEz5dSKjeyEaWUCTZnSimbKia5Uor5xEQs01gpcsskEdtWKXKLjVimtVLklkkitq1S5GYl5qNQitx88FhVSpGbFY6PQqkE4cb7xLCtpFSCtI8uR9gCxihUqpDVh/06bA9Riv0gLJgIQv4OjgDIolaK/c2Cxlccsb/F6fpWpKjyLWe0yhTdD/x8+Y0xRZsH7CJx8ysD0kcbItUnXvkolTvto5QqVONi0bZzQbHjhEEULUUTEiABEiABEiABEiABEiABEiABEiCB5CfAGpIACZAACZBAYSfACYPC3gNYfxIgARIgARIoHARYSxIgARIgARIgARIgARIgARIgARIggQgEkmDCIEINqSYBEiABEiABEiABEiABEiABEiABEkgCAqwCCZAACZAACZBAXhPghEFeE6Z/EiABEiABEiCByARoQQIkQAIkQAIkQAIkQAIkQAIkQAIkkO8E8nzCIN9ryAKQAAmQAAmQAAmQAAmQAAmQAAmQAAnkOQFmQAIkQAIkQAIkUPAJcMKg4Lcha0ACJEACJEACeU2A/kmABEiABEiABEiABEiABEiABEiABJKfgHDCoBA0MqtIAiRAAiRAAiRAAiRAAiRAAiRQ2Amw/iRAAiRAAiRAAiQQmQAnDCIzogUJkAAJkAAJJDYBlo4ESIAESIAESIAESIAESIAESIAESCD5CcShhpwwiANkZkECJEACJEACJEACJEACJEACJEACfgSoIwESIAESIAESIIFEIMAJg0RoBZaBBEiABEggmQmwbiRAAiRAAiRAAiRAAiRAAiRAAiRAAslPIClqyAmDpGhGVoIESIAESIAESIAESIAESIAESCDvCNAzCZAACZAACZAACRQOApwwKBztnGe1zDiQISoj46D9wwd82Rxl6DwQbPpo5fCBYLOHDsGmj1YOHwg2e+gQbPpo5fCBYLOHDsGmj1YOHwg2e+gQbPpo5fCBYLOHDsGmj1YOHwg2e+gQbPpo5fCBYLOHDsGmj1YOHwg2e+gQbPpo5fCBYLOHDsGmj1YOHwg2e+gQbPpo5fCBIJYE0CFY1FGL4QPBlgA6BJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjsoUOw6aOVwweCzR46BJs+Wjl8INjsoUOw6aOVwweCzR73drjHs+mjlcMHfNnsUQYEmz5aOXwg2OyhQ7Dpo5XDB4LNHjoEmz5aOXwg2OyhQ7Dpo5XDB4LNHjoEmz5aOXwg2OyhQ7Dpo5XDB4LNHn0RfdKmj1YOH/Bls0cZEGz6aOXwgWCzhw7Bpo9WDh8INnvoEGz6aOXwgWCzhw7Bpo9WDh8INnu0HdrQpo9WDh/wZbNHGRBs+mjl8IFgs4cOwaaPVg4fCDZ76BBs+mjl8IFgs4cOwaaPVg4fCDZ76BBs+mjl8IFgs0cfQV+x6aOVwwd82eyhg41NH60cPuDLZp+2P0PS9RiPTR+tHD7gy2aPMqAsNn20cviAL5s9yoCy2PTRyuEDvmz20MHGpo9WDh/wZbNHX0Sw6aOVwweCzR46BJs+Wjl8INjsoUNw9TmMwAdCDpMXuGScMChwTZZYBU7dp3KtQH6+MjLScy0fP19+ulgL4OfLT8d87G1Nbvbe4cfGT2f3GF7j58tPF96bXerny09n9xhe4+fLTxfem13q58tPZ/cYXuPny08X3ptd6ufLT2f3GF7j58tPF96bXerny09n9xhe4+fLTxfem13q58tPZ/cYXuPny08X3ptd6ufLT2f3GF7j58tPF96bXerny09n9xhe4+fLTxfem13q58vv3s7uMbzGz5dfGcJ7s0v9fPnp7B7Da/x8+enCe7NL/Xz56ewew2v8fPnpwnuzS/18+ensHsNr/Hz59cXw3uxSP19+ZbB7DK/x8+WnC+/NLs1IP2BV5mo+Pr8N45WPX9tZIVgUfr7iVR/mY2kcLfZj46fTSWP67+fLr4/ElIk29vPlp9NJY/rv6+vfNFEH/9xppg/ty1Yw3zLYElnkvr50GeJRH4lTPn590YLHKvbz5aezOrQo/Hz56SzurOLc9GXNJEEUnDBIkIYoqMUo8rfuQnp8FzOuCLHWA2kQRPswviwO0tPSRPQMdEYgWMysYjedTm98WSyNTtu49hY7m9hNp30YXxZDo9M2rr3FziZ202kfxpfF0Oi0jWtvsbOJ3XTah/FlMTQ6bePaW+xsYjed9mF8WQyNTtu49hY7m9hNp30YXxZDo9M2rr3FziZ202kfxpfF0Oi0jWtvsbOJ3XTah/FlMTQ6bePaW+xsYjed9mF8WQyNTtu49hY7m9hNp30YX5mG2bZGp21c+2wW/gI3nfZhfFnMjU7buPYWO5vYTad9GF8WQ6PTNq69xc4mdtNpH8aXxdDotI1rb7Gzid102ofxZTE0Om0De4uJrxjpEHDNN74s1kYXyMfYW+xsYqRBYD42QuHlYIZAbuH52KRghlDYuJl7O32Ph3s9BBsfmxxpEHifaCMUXo6+hlDY+lu8/i6wXwf3O/Q1BPS3A2n7gpWeo/Qk+z3HfuBpXB1FH0BAPzBtrWXh/hsd799cNGCGEIlbvPpbvPJJ+2G34In9jPScvWmAJ+SRFj7gywUaEkm2+qCuqDPqDgYh1Y14iDRICx/wZUuQz+eprVjZ5Dh3ECKdP/GqT7YCFnCBHu0t4DVg8fOVQJEdIsW2KEnZmSEZ+9NFHYgtIA3Swgd8ieVfenqa7Nu3Rw4cSJP09AM6pMcYDpi08JGufVmy0T7TmE96uubgBHJLZ3/T/YH9gP0A14Sc9AOkizXkJB/+XUAfxd9I/p1jf0ukfoB7O9zj4V4P93yK94mSSO2Tru+Jcc1AmdLz/H4nee7j2a9Dr7NZf7fNwI3lh1Z6kvU39gN7P0BbW7qB/l2Rxt/bOfi9Ha/+Fq98DmzZK3vm/SP7f9sr6Tv3S8a+AzEFpEFa+IAvW39Ltvqgrqgz6g4GecUN5zDvD9L19coJWX/nwMbW35JNzgmDZGvRfKhPkZ0iJTalSOmfUqXUmpSYAtIgLXxEKjpecU3Tkwb79+6WfXt2xhSQBmnhg/lEz47c9ggYsL/tFuv5E3JC4RyDLbntNH0HLMAkBFO2Q9jANtm4xXruwB4MwAJMsoEKEcAGtm2wX/gAABAASURBVEiDtLEEpEFa+Ahxm+0QNrBFmljygC3SIC18ZHMcIoANbJEGaWMJSIO08BHiNtshbGCLNLHkAVukQVr4yOY4RAAb2CIN0sYSkAZp4SPEbbZD2MAWaWLJA7ZIg7Twkc1xiAA2sEUapI0lIA3SwkeI22yHsIEt0sSSB2yRBmnhI5vjEAFsYIs0SBtLQBqkhY8Qt9kOcY+Hez3c8/E+kX9P0Xdi6WuwRZpo+xv6JGyRBmljCUiDtPCRrSOHCNivd7q/xWLhBrZgjDSxtA1skQZp4SOkObIdwga2SIO0sQSkQVr4yOY4RMB+wH6ALoG+gj6DvhNLX4Mt0iAtfMCXX4hXf4tXPum/7pN9s/+RPR/8JTsnb4spIA3SwocfM+iSrT6oM+oOBnnJDX0SfRN9FH3VDVGMxSEN0sIH2sAvwAa2SBNLHrBFGqSFD788oIMNbJEGaWMJSIO08AFfhSVwwqCwtDTrSQIkQAIkQAIkQAIkQAIkQAJhCFBEAiRAAiRAAiRAAiRAAg4BThg4JLgnARIggeQjwBqRAAmQAAmQAAmQAAmQAAmQAAmQAAkkPwHWkARyjQAnDHINJR2RAAmQAAmQAAmQAAmQAAmQQG4ToD8SIAESIAESIAESIAESiB8BThjEjzVzIgESIIFgAjwiARIgARIgARIgARIgARIgARIgARJIfgKsIQkUIAJJP2FQoWIladPmXBPKlj3E2jQtWpxpbBo1amy1qVGzlrE56+xzrDa5pVi3YaP8vHmL3NWrd265pB8SIAESIAESIAESIAESIIFcJkB3JEACJEACJEACJEACJJBMBFKSqTLh6nLmmWfKuPHjTbi+W7dwJlLp0EryxqRJxubNtyaHtYHwhdEvGJvxr7wiqampEOVZKFKkiCilpEyZMjnOQ6WkSpFiJaRo8ZJSrETpmALSIC18RCoAbGCLNMynpGEOJuQWfZ9D30EfSjBupi1RNvZr9mv2g9Lmb0m052laaZE91dNlZ90Dsqt+ekwBaZAWPngd5XWUfxei7wP4W4VrVWE9T3HNwLUD1xBed0qae5hEOn/i1T7xygdsca7hnMO5F0tAGqSFD/6di/4aR24lzL1YLH0NtrFwi9f5k2z54FzGOQ3WYB5LQBqkhY9I14OUqsWkWOvyUqJDRSl9ReWYAtIgLXxEyqcQt0+2MbNY2ide3NCGaEu0aV72g3jlg76PcwCsYzl3YIs0SAsfkfo1bGCLNEgbS0AapIWPSPkkkz7pJwymTZ0qGRkZps3OOru12YdurrrqaldUvkJ5M4HgCjyRekfXN0dbtmyRAwcOmHiiblJSikgxPVmQmlpEUvTEQUpKit7HElIlVaeFD/iy1RM62MA2hfloxuTGfoDzjP2A/aDw9oM0Pc+9r1qGpJdWooqmSEZqbAFpkBY+4It/f9CXogm87qTwPiTq+xCcWzjHcK7hnCvo56l/fSJfg8AALMAEvnjdieaaA5vorjtgCrZgDNZ51d/ilQ9//6DtvSG6fkBuXmaIJxa3eJ0/yZZPvPp1arXiUqJFeSl6eHFJKV1UVLHUmALSIC18pGpftr9zbJ8UfS/lDdGdp/HihrZDG6ItU/KwH6TqPhKPfOJ1/sQrH9t5VVDlKQW14NGWe//+fYIBftg3bBh+uaHzzzsfajd4JxAcIZYjKlG8uDmcO2eO2SfyJqVIERGlB2sCQWL8p1RmWvgwvizpjS5gq5SyWNnFSimdhRK9EeNLwv8zuoCtUto+vJlVqpTSWSjRG+Yj0f9TSmlkSvQm8bjpskmM/5RSuipK9Ib1kej/KaU0MiV6Q24S/T+llEamRG8KFbe0Cuki+u4iQ9cfQWL8hzQI8PF/9s4DTq6q7MPvmd1sEpKQUAVCgID0Ik0FCx3ECiL62bufil1RRAQpYvezY1esNBt2RaUpTXrvCCEhSEsgIcmWme/8z5TMzt5z597d2cns7LO/fW952znnOefemTlnSsgViedxYTgY55wfas78ZlKNN8aBDftzzvkh4MxvUsdBuLa66DrttvZ027huV/+0q5xu65/WtqfHYn+tLce/1o0URDnDwTjn/EOCM7/piMeFdl2n7SqnXeOtd9vp5nqcuYKzgnOW908xilUO5YrFt4tbu8ppV/+0qz3qO/Wh+lJ9GuvHmF4xilUO5Yr5ySYf+Som5hfTK0axyqFcUb8um7eMtXOi6v1LhbZXve0FVif411prLdtow41GlL/t9tsP0zUuIMj4spe9TLsgZ55xZtg3bqZOnWb6DYQpU/oaTannm87bzOZttnmqT16jcwVzLv8DSVI5zudK0ksnm3OUIxaNIjaNuuq5bM7Brcqjfi829ef1x7I5B7d6JtVjsakeN+5lcw5ujVx0LjbaJ4lszsEtxiZJL91QX8nChL9OxijKFUtB/8TImDket200f5OJm66tbrpOu609GovOdc/jT7v6p13ldFv/tLY9iQsG4Zbc2nIKIWfShnKSqJR1YlM+Grlt1/XTbeWIqXPjf7+2tXvNFcZeTkkpfK6RI6CsoX/KHJK26uskvXTt4taucdCucsTUOQ1KURybKFcsg2zOjX85sfInqj7+SDtRW5RQ77POPKumPeyII2rHOthttz2sr2+KDu3uu+8O+8YFBCn3P2A/7ay/f8CuvfbqcFzdHHb4S+3qa6+zO338X847z+665x679PIr7JOf+nTVZcS+p6fHTv/RT+zeBffbpZddZpdcemk4/sHpP7JZs9Ye4Z9X4VyrLgZnzrlo8c7FbdGgBINzjnISuDRTOQe3ZoyS7M7BLYlLM51zcGvGKMnuXLdyS2qtmd5JYi34KznPrcdFMzkXt0WDEgzOOR5/Erg0UzkHt2aMkuzOdQi3lGsrqd4xXcdcp93WHj9OYszz6J2bZOONcZA4PJzrkHHg65FYwZxK52hPTmTB3bkm3Np1/XRbOZ5rADzGjXPp/dM7xY2xhHJ4wZeTlqttz+PbNQ58e8stH9vWOZf+eqFN7UnruzwtbDYO2lWOcy5PtaO+zrn0/vH2aHAOg3Pp5eRINSFcRy4YTIhq56vkNddcFSb6FXXggQdqV5NXvfpV4XhwcNCO//jHw7EWELSQEE4qm223LX8K4fZbb61oyrsDDzrYvvb1r9sGG2xQVvitc8423XRTe8Mb3mA/PP3HXjPy/4yzzrYDDzrQCoXVXaDjgw8+2P7y17+mDvaR2dBAAAIQgAAEIAABCEAAAhCAAARyEsAdAhCAAAQgAAEINBBYPVvdYOi20+pE/0477zSsafvsu284v80vBFx04QU2MDAQzl/9mleHvTabbLSJ6euMdPynP/9JuyDbbLOtfe/73w+T+/rkwRc+/3nb6xnPsHe985123733Bp+DDj7IjvnoseG4ujn2Y8fZ3nvvHU4fe/QxO+nEk+yZe+wZFiwefPBBm7fZZsHGBgIQgAAEIDBaAsRBAAIQgAAEIAABCEAAAhCAAAQg0P0EWt3CSbNg8Oe//DmwmzVrlq2z7nrhWL85sMkmm4TjP/zhD2F/6823hP1z99kn7LU5/GWrv8bo7LrfLzj5lE9ab2+vlUole+2rX2Vf+fKXbOHC++23vz3XDtp/P3v0kUcVbm9805vCvrp505vfHA61yHDowQfb9777bVu0eJGd/sMf2IEHHGArVqwIdjYQgAAEIAABCEAAAhCAAAQgMGkJ0HAIQAACEIAABCDQdgKTZsHgrJ+fUYN72GGHheOX+L1zLhz/9Kc/DfvfnHtu2GshQQsKOjmg8jVGjy9daov/u1iqINtsu03Y33zTTXbppZeE4+pmxapV9qMfnR5OZ86cadOnTg3HM2b44+nTw/FPfvyjsFAQTiqbpUsesy9+4YuVM3YQgAAEINCdBGgVBCAAAQhAAAIQgAAEIAABCEAAAt1PYOK1cNIsGGiiXxP+6qJDnvc87ezwww8P+4ceesgee/SRcHzmGT8Pe+ecaUFBJzvuuKN2dtVVV4d9dVP93YIdd9rJLrjo4hHy1re9repq++x/QDjed9/9wl6bSy8ZvsggneTiiy7UDoEABCAAAQhAAAIQgAAEIACBTiVAvSAAAQhAAAIQgEAXEpg0Cwbqu+qE/y4776JT22333cP+4osuCnttHn98qel3BHSsBYX11l/P9AkBnf/qV7/ULshTn7p12Fc3W221lTWKvv6oat9hhx3C4S5PK5etk6uvHr4AIZ3k5ptv0g6BAAQgAIE1RIBiIQABCEAAAhCAAAQgAAEIQAACEOh+ArRwJIFJtWDwm9/8OhCYPWe2bbfd9lad0P/ZT38W9NXNhedfEA5332MPO/zw8u8X6HcK/vD73we9Nvfee692Qe666y47/rjjEuWUk08J+l/84hfB95Zbyr+RoBN9MkH7RmlcjGi0cw4BCEAAAhCAAAQgAAEIQAACqQQwQgACEIAABCAAAQiMgsCkWjDQhL8m/sXpS1/6snamHx6+4orLwnF185Of/CQc6pMFRx55ZDheuHChDQz0h2NtdLx0yVId2uOPL7HTT/9honzn298M+gX3lRcYLrjgghCjzd57763dCNln331H6FBAAAIQgECVAHsIQAACEIAABCAAAQhAAAIQgAAEup8ALVwTBCbVgsGqVStNE/8CvdMuO2tnN954XdjXb6699mpbuWpVUO20c9mv/muLgsFv7rr7Dr81e9rTdrMddyr7BUVls+9++9svf/2rIHM33jholy55rJb7TW9+s82es07QVzfTp061D33oQ9VT9hCAAAQgAAEIQAACEIAABLqPAC2CAAQgAAEIQAACEOhIApNqwUA98M+LL9auJr/+1W9qx/UH1117bf2pnXXmWcPOdfKl//uy6RMLhULBfvPb39qrX/NamzFjpk2dOs3e+ra32w9PP92e8Yy9bBe/oPDAgw8qJMi5vy5/NdL06dPtL3/9qz3v0OdbT0+PHXDgQfbnv/3d1p49O/ixgQAEIDARCVBnCEAAAhCAAAQgAAEIQAACEIAABLqfAC3sTgKTbsHgzDPOrPWkJvvPOnP1ec3gD371y1/6bflfX1t01VX/Lp/UbS84/x92wvHHB820qVPts5/7nN16++1259132ydO/IRNmTIlLCh86P3vt2KxGPy0OfpDH7Sbb75ZhzZ37lz73ve/b/+5b4H96Mc/ti233NIerFtcCE5sIAABCEAAAhCAAAQgAAEItI8AJUEAAhCAAAQgAAEITFICk27BQBP/WgBQfy964AFbseJJHY6QX//inDDZL8Ptt92qXaKc/sMfmH7YeMF99w1bFJDzfffea6/8n5fbb397rk6HyeEveYldd901w3Q6ueaaq+x5hxxUK7t+oUH2rFIqlWo5ssYk+TXL08yelDNJ1yxPM3tSziRdszzN7Ek5k3TN8jSzJ+VM0jXL08yelDNJ1yxPM3tSziRdszzN7Ek5k3TN8jSzJ+VM0jXL08yelDNJ1yzPcHtShmy6Znma2bOVYuHhEyXOAAAQAElEQVTepVwxf9kkMXtWvXJIYv6ySWL2rHrlkMT8ZZPE7Fn1yiGJ+csmidmz6pVDEvMvDZXM+cegmD2rXjmUK+avOkhi9qx65ZDE/GWTxOxZ9cohifnLJonZs+qVQxLzl00Ss2fVK4ck5i+bJGbPqlcOScxfNknMnlWvHJKYv2ySmD2rXjkkMX/ZJDF7Vr1ySGL+urZ0jcXsWfXKoVwxf9VBErNn1SuHJOavOqguMXtWvXIoV8xfdZDE7Fn1yiGJ+csmidmz6pVDEvOXTRKzZ9UrhyTmL6ZiG7Nn1SuHcsX8ZZNPzJ5VrxzKFfNXWyUxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmL/GvMZ+zJ5VrxzKFfOXTT4xe1a9cihXzF82+cTsWfXKoVwxfzGVxOxZ9cohifkPDpSs2ILn18qhXLFy1Fa1OWbPqlcO5Yr5yyafmD2rXjmUK+YvppKYPateOSQxf9VBdYnZs+qVQ7li/uo79WHMnqwfqVUO5RppKWtkk0/5bPRb5VCuWAYxlcTsWfXKIYn5yyaJ2bPqlUOS1X+i+026BQN12FbzN7d5czexvZ6+p04TZcWqVbbZpnOD3/MPfV6iT1X5nW9/05619142f/PN7GUvPcKOOPyl9tQtt7RnP2tvu+Rfl1Tdhu21UPGiF7zQdthuu7Co8Iojj7RtnvpUe8mLXmyPPPxIrexTP3nKsLisJ6XS6k80ZI2J+aXlSrPF8sX0abnSbLF8MX1arjRbLF9Mn5YrzRbLF9On5UqzxfLF9Gm50myxfDF9Wq40WyxfTJ+WK80WyxfTp+VKs8XyxfRpudJssXwxfVquNFssX0yflivNFssX06flSrPF8sX0abnSbLF8MX1arjRbLF9Mn5arp9/FwnLr03Kl1SFvQWm50myUE3+uAbf46Ehjk2aLZ0y2pOVKu7aSs8W1abnS6hDPmGxJy5VWh+RscW1arrQ6xDMmW9Jypdlq2TIepOVKs2VMX3NLy5XGtJYg40FarjRbxvQ1t7RcaW2tJch4kJYrzZYxfc0tLVearZYg40GpOBT1bGk5Ka91KSfaBZbGJm3MxzMmW9JypdmSs8W1abnSbPGMyZa0XGlMk7PFtam5Hh80V4rHZrWEHD5XzD+trbGYmD4tV5otli+mT8uVyjSWMKJPy5VWh0i6qDo1l++70IfR6GyGkMPninp7W/CJOmQzhBw+V8w7jWksJqZPy5Vmi+WL6VuZK1ZGp+gn5YLBeMEvFot2xRWX2b//fbnpB5azlPPEE4/bv/75L7v00kuin3bIkqfRpzg4qLfp+icFpSCN9mbnJb96LfHBFnJFAoKt4hv8I34xtWIklBMjlKwXMwnckvnEtGIm6WRusbon6dUWCe1JohPXiZkEbnFGSRYxkzTj1vuYf2rh55H1DpmkPM10ipOYzxFyRQJ4/BkORn0jadY/cIObCIRry19jutYk0uURxUg65TrttvZ023Xarv5pVznd1j+tbM/QYH/0VlLk9ekwNnrMlnTK43a7rp9uK6dd43rwthWmd56XiqVRfdJA7/RWrHIo17DBWHdC/9TB8Ie6RiXNrtOxcPPF+MWgUpBmz6vUd+pD9aX6VLF5RDGKVQ7lisXKJh/5KibmF9MrRrHKoVxRvy57XIi1c6Lq/av6iVp16p1GoFgctP7+lTY0NGjF4pCXYk4ZCrHKUfS5YmXJJh/KqfKFW5Hx5q81xgHjQPeEyTkOepeZ9S10Vljun/gOFc3llNJAMcQqh3JZ5K/oH5t4/NE4q8rkHG+Mg2r/V/fZxoGuLV1juk51zU3067QD2+OfC1T7pH6frX+6bVy3q3/aVU639U8r2xMm1njcjlz/9fcCHXfW/aBd10+3ldPK60e5IpePDS1cZSsvXmIDi1dZcfmAlfqHcoliFKscyhUrh/7RtVkv2a7TdnFT36kP1Zfq0/EaB+0qR2O+m17Pxa6riapnwWCi9lyGepf8xO2gXzQYWLXC+lcuzyWKUaxyNCtKPvJVDOWsMLEQE7hlH3MaOxODW7Y20Z6VJgbcDybv/aB3udm0BQVb6/b8MuOunhCrHNxHs91zdK3pmuM+yvOdPONA15iuU11zea9VxShWOTrlOlVdVCfVrRvao+eSuqbVp7rG84hiFKsck61/GAerHzc6cRxoTGpsqm55xrR8FaNY5eiUca26qE6qm+qYRxSjWOXolPa06/rptnLUh+pL9WmeMSBfxShWOZqNg+ID/dZ//hJbee6jtvych3KJYhSrHM3KoX/q76PZX8+1i5v6UH2pPh3PcdCucjT2dQ3oWtA1kUcUo1jlaDau5SNfxeQpQ76KUaxyNCunm+wsGHRTb9IWCEAAAhCAAAQgAAEIQCCdAFYIQAACEIAABCAAAQhAIEqABYMoGgwQgMBEI0B9IQABCEAAAhCAAAQgAAEIQAACEOh+ArQQAhAYPwIsGIwfWzJDAAIQgAAEIAABCEAAAvkI4A0BCEAAAhCAAAQgAAEIrEECLBisQfgUDYHJRYDWQgACEIAABCAAAQhAAAIQgAAEIND9BGghBCAwkQmwYDCRe4+6QwACEIAABCAAAQhAoJ0EKAsCEIAABCAAAQhAAAIQ6GoCLBh0cfe6Qo/19k2zKVOnW9+0GblEMYpVjmaI5CNfxVDO9MBcTCYat6S+U5+qb2kP1w/jgPso94NpPJ765xKMA8aBni8wDhgHjANeZ2kMSLgfcD9gHLTnfjA4w2zlvKIt32rIntymmEsUo1jlqM5TxPbyka9iuqEczWXotazuVRqreUQxilWOGK+qvl3cChv3Wd/+c2zaYevajJdvkEsUo1jlqNY7tm9Xe8RWjMU6T9/IVzGKVY5YO9CPngALBqNn19GRhUKv9fnFgp6eXiv4hYNCoeD3eaTHenyscihXrLGyyUe+BcrxjOHGONB1xjhgHDAOeFzQGJBwP+B+0NZxYD08f/PPx8Q8j3Cdcp1qvDAOGAeMAz2GMA46bxwMzjTrn1uy4gxnbkrBSj35RDGKVQ7lis3vyCYf+SpmopfTrvmqdnHrmTvVpj13jk3ZaKoVZkwx19eTSxSjWOXo8bnW9DhoV//E2ok+nUAh3Yx1ohIo9PaaOf9gUhHL+edcOVY5Qq5IfLBVfJ1zEa+42jnni3DmNxZyWfJfsFV8nfP+yW5RrXPOF+HMbyZoOTbszznnm+LMb2iPZf9zznlkzvwGbpb9zznnkTnzG7hZ9j/nnEfmzG/gZtn/nHMemTO/gZtl/3POeWTO/AZulv3POeeROfMbuFn2P+ecR+bMb+Bm2f+ccx6ZM7+Bm2X/c855ZM78Bm6W/c8555E585s2cuux2B+v54aTcc75rnHmN23sHz9HYMl/9M9wLs453zXO/GYN9Y8N+xtcp2jmZ+9Kvl6SYcYMJ4qRKEfIFYkJti4qp13jul3ceredbq7HmSs4Kzhnef8Uo1jlUK5YfLva067+ibUTfToBfytId8A6MQk4VzDn8t9AklrrfK4kvXSyOUc5YtEoYtOoq57L5hzcqjzq92JTf15/LJtzcKtnUj0Wm+px41425+DWyEXnYqN9ksjmHNxibJL00sFNFJJFbJItZs4/1jrHeLOEP7FJUAeVbM5NIG6+1qqz3yX+y+Yc7UmCIzZJeulkcw5uYtEoYtOoq57L5hzcqjzq92JTf15/LJtzcKtnUj12Lr5g4Hicq2IasRebEcqKQjbnGG8VHMN2YjNMUXcim3Pdw22or2Rhwr+ujaM9VK5YrGzdVE67xkG7uNnaveYKYx/XJaXwudb0OGhX/8TaiT6dQCHdjHWiEnBOd4Cx1945Z865aCLn4rZoUILBOTehy2lsknO0p5FJlnPn4JaFU6OPc3BrZJLl3Dm4ZeHU6OMc3BqZZDl3Dm5ZODX6OAe3RiZZzp2DWxZOjT7Owa2RSZZz5+CWhVOjj3Nwa2SS5dw5uGXh1OjjHNwamWQ5dy6ZWzXWOVc9HNPeOZc+H9LjxpS/GlxSOSm5XIqtmiPLvmPK8e3NUt9mPs65juif3imuWVUz2Qu+PWm52jYOfD0yVbiJk3MutX+ahGOOEGDBIAIGNQQgAAEIQAACEIDApCJAYyEAAQhAAAIQgAAEIAABCEx6AiwYTPohMBkA0EYIQAACEIAABCAAAQhAAAIQgAAEup8ALYQABCAAgbESYMFgrASJhwAEIAABCEAAAhAYfwKUAAEIQAACEIAABCAAAQhAAALjToAFg3FHTAHNCGCHAAQgAAEIQAACEIAABCAAAQhAoPsJ0EIIQAACEOh8AiwYdH4fUUMIQAACEIAABCDQ6QSoHwQgAAEIQAACEIAABCAAAQh0AQEWDLqgE8e3CWSHAAQgAAEIQAACEIAABCAAAQhAoPsJ0EIIQAACEICAGQsGjAIIQAACEIAABCDQ7QRoHwQgAAEIQAACEIAABCAAAQhAIAMBFgwyQOpkF+oGAQhAAAIQgAAEIAABCEAAAhCAQPcToIUQgAAEIACBdhBgwaAdlCkDAhCAAAQgAAEIxAlggQAEIAABCEAAAhCAAAQgAAEIdAQBFgzGtRtIDgEIQAACEIAABCAAAQhAAAIQgED3E6CFEIAABCAAge4gwIJBd/QjrYAABCAAAQhAYLwIkBcCEIAABCAAAQhAAAIQgAAEIDBJCEzqBYNu7uNSqWSSsbZROSSxPLJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyTJnkenHJJYjGySmD2rXjkkMX/ZJDF7Vr1ySGL+skli9qx65ZDE/GWTxOxZ9cohifnLJonZs+qVQxLzl00Ss2fVK4ck5l8aKpnzczwxe1a9cihXzF82+cTsWfXKoVwxf9nkE7Nn1SuHcsX8xVQSs2fVK4ck5q86qC4xe1a9cihXzH9woGTFFowD5VCuWDmqg+oSs2fVK4dyxfzFVBKzZ9UrhySrP37ZCLBgkI3ThPMqlYotq3NarjRbBgUMiAAAEABJREFU3gqk5UqzUU68r+EWHx1pbNJs8YzJlrRcabbkbHFtWq40WzxjsiUtV5otOVtcm5YrzRbPmGxJy5VmS84W16blSrPFMyZb0nKl2ZKzxbVpudJs8YzJlrRcdbbk4BzatFxpthxFBNe0XGm2EJxjk5YrzZajiOCalivNFoJzbNJypdlyFBFc03Kl2UJwjk1arjRbjiKCa1quNFsIzrFJy5Vmy1FEcE3LlWYLwTk2abnSbDmKCK5pudJsITjHJi1Xmi1HEcE1LVeaLQTn2KTlSrPlKCK4puVKs4XgHJu0XGm2HEUE17RcabYQnGNTKg5FvVtaTsprXcqJdoGlsUmzxTMmW9JypdmSs8W1abnSbPGMyZa0XGm25GxxbVqunn4XD8xpScuVZstZjKXlSrO1spw0pnnLScvVrvbY44N+4ShvzUf6u5LX+Vx+m/jfrvakMU2sWIqylblSiplUpg5eMJhU/dDyxhYHB80/I/D/pSB5Cyj5VUuJD7aQK5Ig2Cq+wT/iF1MrRkI5MULJejGTwC2ZT0wrZhK4xQgl68VMArdkPjGtmEkmM7cYmzS9mEkmM7fQ/jRICTbFSOCWACdFJWYSuKVASjCJmQRuCXBSVGImgVsKpASTmEnglgAnRSVmknZyGxrsj9ao2PT1aTQ0GNQWSTvbE+ocSh+5CTZeB9fAqG8k9E8NSaYDMZM049b7mJ+6K5qfLC4FsZx/eqe3xHyOkCsSH2zeR76SiFtUrRhJp5TTruu0XdwGb1thesd+qVga1ScN9MkCxSqHcsU6sl3taVf/xNqJPp2Av+ukO2CdmASKxUHr719pQ0ODViwOeSnmlKEQqxxFnytGQTb5UE6VL9yKjDd/rTEOGAe6JzAOisWiFXML3Lh+uH54XqUxIOF+wP2AcTCR7gdh4jPywrHoX1PyulHjuSrc34q8bsz8urF3mVnfQmeF5SUrDRTNDeUTxShWOZTLIn+yyUe+ipno5RTbdN9pF7ehhats5cVLbGDxKisuH7BS/1AuUYxilUO5IsPA2tWedvVPrJ3o0wmMesEgPS3WTiBQ8g/Ag37RYGDVCutfuTyXKEaxytGsLfKRr2IoZ4WJhZjALfuY09iBG9cp42CliUE33UfztkX+YsD9gPsB46D77gfqU13jeUQx3A+4HzAOOuN+ELt26R/6R2ODcTD+46B3udm0BQWbcVePrXV7IZcoRrHK0WyeQj7yVUw3lKO5GT2X0BjVWM0jilGscnQKt+ID/dZ//hJbee6jtvych3KJYhSrHJ3SHrEVY7HO0zfyVYxilaNZe7DnJ8CCQX5mREAAAhCAAAS6hQDtgAAEIAABCEAAAhCAAAQgAAEIQKD7CWRuIQsGmVHhCAEIQAACEIAABCAAAQhAAAIQ6DQC1AcCEIAABCAAAQi0jgALBq1jSSYIQAACEIBAawmQDQIQgAAEIAABCEAAAhCAAAQgAIHuJ9BBLWTBoAWdsd1227cgCykgAAEIQAACEIAABCAAAQhAoNsI0B4IQAACEIAABCAwkQhMigWDWbPWtoMPPiSTrLveurn674qrrrTz/v53u/if/8oVhzMEIAABCEx4AjQAAhCAAAQgAAEIQAACEIAABCAAge4nMKlaOCkWDA553vPsB6efnkle85rXZR4AWojYeKNNgv8W8+dbodBZOAsb91nf/nNs2mHr2oyXb5BLFKNY5QgNTNm4Qo/19k2zKVOnW9+0GblEMYpVjpQigmlwhtnKeUVbvtWQPblNMZcoRrHKEZKlbFQX1Ul1G8/2UM7qsSLWYi4mKV0TTPKRr2Lon+nh2hOTACdlo2tZ17Su7W64H6jNjIPyNaRrQSzEJGUIBJN85KuY8bx+dK/VPVf3Xu7X2a/TdvUP5ZSvHV0DuhZ0TYhJuEhSNvKRr2IUm0cUo1jlSCkimOQjX8XkKUO+ilGscoRkKRv5yFcxis0jilGscqQUEUzcD0Y33uA2Om4akxqbGqPZx3S5LMUoVjnC4E3ZdFv/dFt71IfqS/XpeI4DyilfO2Is1mIuJimXTjDJR76KUWweUYxilSMkS9nIR76KyVOGfBWjWOVIKSKY5CNfxSg2jyhGscoRkqVs2nWd8rpxdOO6Xf2jsaIxo7GTZ6zJVzGKVY6UoRZM8pGvYhSbRxSjWOUIyVI28pGvYvKUIV/FKFY5UorANEoCnTXDPcpGtDJsYGAgc7onnnjc/vrXv1p//4Cde+65ViwWM8eOt2PP3Kk27blzbMpGU60wY4q5vp5cohjFKkePzxWrb6HQa31906ynp9cvmPR4KeSUHuvxscqhXLFyBmea9c8tWXGGMzelYKWefKIYxSqHcsXKUR1UF9Wp4BdCCn4RKJ9kaw/lNI4TuBXGcbzpGta1PKVL7geZr5/o9ct4G8/xpnus7rW65+rey/2a8Tae4437QWc/nnI/GF3/wG103Np1P+i2/mllewbWLsVeZvnXiO153diucUA5nX2ddlv/tPI6Va7YhcrrxtGNazHl9U89uzX0+ic2sNGPikBhVFETOOgVRx5p8+ZuEpVvffO0XK17y5veaFvN39zefdQ7c8WNt3PvttPN9fjJ9YKzgnOW908xruBMOZQrFl/o7TVz3q8ilvPPuXKscoRckfjBdfxijB+tJe8vibhF1YqRmM8RckU8Qx18Gc5V6hXxi6mdq8T5fcgVcQw27+NcxT/iF1M7V4nz+5Ar4hhs3se5in/EL6Z2rhLn9yFXxDHYvI9zFf+IX0ztXCXO70OuiGOweR/nKv4Rv5jauUqc34dcEcdg8z7OVfwjfjG1c5U4vw+5Io7B5n2cq/hH/GJq5ypxfh9yRRx1Deta1jVd8L4Rt6haMYpVDuWKOYY6+PzOVeoVc4zonavE+X3IFfELNu/jXMU/4hdTO1eJ8/uQK+IYbN7HuYp/xC+mdq4S5/chV8Qx2LyPcxX/iF9M7Vwlzu9DrohjsHkf5yr+Eb+Y2rlKnN+HXBHHcI/191rdcyURt6haMRLu11FEiQbnsvVP6LuKr3MuMVea0jnnH7Kd+Y2FXJb8F2wVX+e8f7JbVOuc80U48xvKsex/zjmPzJnfdAQ37gc27M8557vGmd+k9g/cbNifc84jc+Y3qdzadd/ptv5pZXuGZqUsGLTpdWO7xgHl2LA/55y/RJ35TUdcp93WP628TkMuS/7Taz295tNrP70GTPaKaxWjWOVQrpgn/TOcjF77SHj9M5xLszPnnL/lOPOb1PuO8TcqAv4l/ajiJm3QeuuvZzvssKP19PR0NoO1e0036rFWsuSvPfO5YnmcK5hzcop5ZNc7nyvmPdRXslKLylGuWDmqg3Pj3x7KifWAmUsZB7I5R/9Ywp/YJKjLKn8Nu8LYuZWUwucqJx25VR2ck9NIW4ImVaVcMQfZnKOcJD5ik6SXTjbnxp+b7rGlFpWjXKp7krSrPZSTRL+sE5vy0citbM6N/3ijnJHsqxqxqR437mVzbvz7R9cw94NG+uVz9UH5aOQWbiOZVDVp3GRzjnFdZVW/F5v68/rjlo63aXH+qoNzcXt9nZodK1fMRzbnKCeJj9gk6aWTzTm4iUWjiE2jrnoum3Pjz62l16mfW6nWf8Tev9bjdeMIKkGhvg4HCZt29Y/q4Nz4j7dxKmcEuXaVM6JgFJkIFDJ5TVKnSy69zO5dcL/9/Myz7D3vfZ/dfOttdu11N9hfzjvPnrnXMwOVv59/QfD5zW/PDeedsumd0pqbSMHfjNJyOdeacpxz5pyL4nM9cVs0KMGgF61puZxrTTnOufT2eHtC9XKrnKOc3NB8gHOTi1vaNexxZP7vmPuB77/MlU5xdG5yjQPnXAqN7CbnXPr9jft1IkznmnDz9sTAnErnKCcnsuDuHNwCiJwb55pw436QSNS5buJm4THBOWexP+fitlhMkt45F8pKsknnnNNuzOKcSy+n28Z1S9sT/4SBc27MfaMEzrn0/vF2+Y1VnKOc0TB0Dm7jwq2l16mLVpHXjclonHPp95029Y9zLrmCObXOufT2eHvOlInuznVGOYmVQ9mUAAsGKYhmzJhphULBdtl5F/vIMcfYrFmzRnjPmDkz+MyaNXuEDQUEIACBCUuAikMAAhCAAAQgAAEIQAACEIAABCDQ/QRoIQQaCLBg0AAk6XT2nNlWKpXsrDPPtDe+4Q125BFH2FVXXp3kig4CEIAABCAAAQhAAAIQgEBHEKASEIAABCAAAQhAAAIQyEtg0i0YHHvcsfa9H/wwUd7xzqOi/F77mtfY0R/6oP39b+fZ5ZdfZqtWrYz6YoAABCAwzgRIDwEIQAACEIAABCAAAQhAAAIQgED3E6CFEGg7gUm3YLDbbnvY8573vER51atfndgBSx5bYhddeEGiDSUEIAABCEAAAhCAAAQgAIH8BIiAAAQgAAEIQAACEIBA5xGYdAsGDz/0sN2/YEGiXPXvKxN76N777knUo4QABCCQSAAlBCAAAQhAAAIQgAAEIAABCEAAAt1PgBZCoAsJTLoFg6Pe+Q7be69nJsoHP/j+xC7W7xckGlBCAAIQgAAEIAABCEAAAl1JgEZBAAIQgAAEIAABCEBgMhKYdAsGk7GTaTMEIDCMACcQgAAEIAABCEAAAhCAAAQgAAEIdD8BWggBCIyCAAsGo4BGCAQgAAEIQAACEIAABCCwJglQNgQgAAEIQAACEIAABCAwHgRYMBgPquSEAARGT4BICEAAAhCAAAQgAAEIQAACEIAABLqfAC2EAAQ6kgALBh3ZLVQKAhCAAAQgAAEIQAACE5cANYcABCAAAQhAAAIQgAAEJiYBFgwmZr9RawisKQKUCwEIQAACEIAABCAAAQhAAAIQgED3E6CFEIDAJCUwKRYMhoaGat07NFSsHTc7KBbLvqVSKe5asdWXEXdun2VwoGTFSt3GUqpyKFcsh9hIYvaseuWQxPxLQyVzLWiPcihXtBxfRlo9YnGNeuWQNOqr57JJquej3SuHJBYvmyRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPx1Detajtmz6pVDuWL+qoMkZs+qVw5JzF82ScyeVa8ckpi/bJKYPateOSQxf9kkMXtWvXJIYv6ySWL2rHrlkMT8dY/VvTZmz6pXDuWK+asOkpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMXzZJzJ5VrxySmH+pVLI0eyyuUa8ckkZ99VzXsK7l6vlo98qhXLF41UESs2fVK4ck5i+bJGbPqlcOScxfbVWbY/aseuVQrpi/6iCJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMX0zFNmbPqlcO5Yr5qw6SmD2rXjkkMX/VQXWJ2bPqlaM05KLuqoMk6pDRoBySmLtskpg9q145JDF/2SQxe1a9ckhi/ltVVWwAABAASURBVLJJYvaseuWQxPxlk8TsWfXKIYn5yyaJ2bPqlUMS85dNErNn1SuHJOYvmyRmz6pXDknMv7XXaSlWjOm1nl7zRR0yGpRDuWLuaqskZs+qVw5JzF82ScyeVa8ckph/u/pHdZDE6pFVrxySmL9skpg9q145JDF/2SQxe1a9ckiy+uOXjcCkWDD4za9/ZfPmbhLkiisuy0bGe+226y4h5iUverE/S/7f6xlPDz6HHHRgssOa0j4+6CfYx16402OJzxXLVCqVF1Vi9jz6tFw9/fEnn3nKkG9arrQ6KDaPpOVKs+UpQ77DcklRJ2m2OrdMh2m50myZktc5peVKs9WlyHSYlivNlil5nVNarjRbXYpMh6m5/DUcruVMmeJOIYfPFfNIrUMsKKJPy5Vmi6SLqtNypdmiCSOGtFxptki6qDotV5otmjBiSMuVdo+NpIuq03Kl1SGaMGJIy5Vmi6SLqtNypdmiCSOGtFxptki6qDotV5otmjBiSMuVZouki6rTcqXZogkjhrRcabZIuqg6LVeaLZowYkjLlXYNR9JF1Wm50uoQTRgxpOVKs0XSRdVpudLaGk0YMaTlSqtDJF1UnZYrzRZNGDGk5UqzRdJF1Wm50phGE0YMabnS6hBJF1Wn5UqrQzRhxNCzQi8ek41pdUiOiGvTcqXZ4hmTLWm50mzJ2eLatFxptnjGZEtarjRbcra4Ni1Xmi2eMdmSlivNlpwtrk3LlWaLZ0y2pOWKXqfJqVK1qbn8a73wmi81Q3NjyOFzxTzT2hqLienTcqXZYvli+rRcqUxjCSP6tFxpdYiki6rTcqXZogkjhrRcabZIuqi6lbmihUwyw6RYMJhkfRqaO3jbCtMqZ6lYGtUnDbQirFjlUK6QNGFTHBw0q7wrv+T3CS6pKsVIlCPkinj3PuaHql+bcL4MScQtqlaMxHyOkCviGergy1CdJBG3qFoxkmbtoZzhCMVMArfhXJqdiZmkGTddw7qWdU3r2m6Wt9GuGMUqh3I12qvnjOsqifJefSNp1j/dxi3cY/29NtxzyyhybRUn4X6dC5sfZqUgfmNhTEXCg43HuRodXaOSTuOmOklqFc14oBhJp7Sn/n4QruuM7ai6KUYy2e4HcKuOgPJeY1rCuC7zyLoVM0kzbq0cb30P+9dskQry+DMcjPpG0qx/4AY3EWjldRpyKWmC6LWeXvPptZ9eAya4pKoUo1jlUK6Yc7eN68C08vonPG+JNTyiV4xksj3fadc4iGBH3YRA/BG9SSDmziYwtHCVrbx4iQ0sXmXF5QNW6h/KJYpRrHIoV6y1xeKg9fevtKGhQSsWh7wUc8pQiFWOos8VK6d3mVnfQmeF5X5CZKBobiiflHyMYpVDuSzypzqoLuPUnlqplNM4TrKNA7iNjpuuYV3LuqZ1bU/0+wHjYHTjoF3cdI/VvVb33Lz3avlzvx70j6Pj93jarnFAOZ19nbarf+rvB7q2dY3nEcXoXqJ7inLVnkg1HLSrPe0qR21Vm9V2McjDTL6KUaxyKFcDrtppu9rTbeWIqdiKsViLeR5RjGKVQ7lqHdJw0C5uqoPqojqpbnnaIl/FKDbk6G9oRN1pu9pDOTz+aNh1yDjwz+ka+6PxfMg096A5CNVZdU+SVl6nypVUhnS8buzs/tEY0VjRmCmO4/xb0c/NdVM5GttIfgIsGORnNmEiig/0W//5S2zluY/a8nMeyiWKUaxyNGtwyd+oBv2iwcCqFda/cnkuUYxilaNZOb3LzaYtKNiMu3psrdsLuUQxilWOZuWoLqqT6jae7aGc1WNFrMVcTOif1Vyajb883HQt65rWtd0N9wONFY0ZMWjGqdGuGMUqB+NtfMab7rW65+a9V8uf+/VK0xhtHLfNzhXDuB7f5yG6Z4jxwCrKyTPeqvcDXdu6xvOIYnQvUY7Jdr9Wm9V2McjDTL6KUaxyTDZu7bpOxVaMxVrM84hiFKscndI/qovqpLrlaYt8FaNY5eiU9rRrHFDO6ueReR4X4DY6brrGdK3pmtO1l0cUo1jlaHad8rqxs/uH62d0/dNs3GMfSYAFg5FM0ExWArQbAhCAAAQgAAEIQAACEIAABCAAge4nQAshAAEIQCBKgAWDKBoMEIAABCAAAQhAAAITjQD1hQAEIAABCEAAAhCAAAQgAIHRE2DBYPTsiGwvAUqDAAQgAAEIQAACEIAABCAAAQhAoPsJ0EIIQAACEFiDBFgwWIPwKRoCEIAABCAAAQhMLgK0FgIQgAAEIAABCEAAAhCAAAQ6mQALBp3cOxOpbtQVAhCAAAQgAAEIQAACEIAABCAAge4nQAshAAEIQKCrCbBg0MXdOzjDbOW8oi3fasie3KaYSxSjWOVohkg+8lUM5QwF5mLSjJsr9Fhv3zSbMnW69U2bkUsUo1jloJzs7PJwUx+2Y1yrD9WXqhvjYHq4JsSkU8Y142D19aUxqrHaSf2juqhOqhvXT2uun2YcxVrMxb5TrlPVRXVS3ZrVv9GuGMUqR6e0p7Bxn/XtP8emHbauzXj5BrlEMYpVjk5pj9iKsVg38m92rhjFKkez9qjNarsYjCc3HhdG97gAt87m1m390672tKsc3QN1L9Q9sdl9s9GuGMUqR7P7qHzkq5jGPM3OFaNY5aCc1dd7K7m163Fu/Wc+xfb4wjNt33MOsIP/dGguUYxilaPZOGjX9dOuctrVP+0qp13cdM/QvUP3kGbXS6NdMYpVjmbjDXt+AiwY5Gc2ISIGZ5r1zy1ZcYYzN6VgpZ5CLnFTCiFWOZQr1mjZ5EM5hcA3K7dCodf6/GJBT0+vFfzCQaFQ8Ps80mM9PlY5lCvWP7LJR74FyvGMs3Fr17imfxrHfLb+aRc3xkFn90+7xgHlMA70GNuucdAzd6pNe+4cm7LRVCvMmGKuryeXKEaxytHjc6nuSdKu9rSrHLVVbVbbC+PIjceFgn8uVS/ZHrfhVs9Mx53FrZX9M7B2KemWE3Ttuh+0sj3KFSqfsJGtHa+DR8mt7lrNNt4oR9dmvXQWtx7/mN6Ox7n1n/UU2/Wk3W2D3Te0aRvOsN4ZfblEMYpVDuVKuHSCql3XT7vKaVf/tKucdnFr130nDDo2uQkUckcQMCEIDK5TNPO9W3LOJHkrrRiJcoRckQTBRjk1OmImacat0Ntr5vvGOed3zvL+OefKcX4fckUSBJv3ca7iH/GLqZ2rxPl9yBVxDDbv41zFP+IXUztXifP7kCviGGzex7mKf8QvpnauEuf3IVfEsV3jOtTB18W5Sr0i9YmpnavE+X3IFXEMNu/jXMU/4hdTO1eJ8/uQK+IYbN7HuYp/xC+mdq4S5/chV8Qx2LyPcxX/iF9M7Vwlzu9Drogj42A4GOeycQtMK77OueFJMpw557i/eQbJqOJa5+DmnIsDiliccx013nq3nW6ux9ep4KzgnOX9U4wrOFMO5YrFd9t1qraqzWp7wblYs6N6xShWOZQr5sjjwnAyzrlM1w/cOptbK/tnaFbKgkGbXv+0sj0h1/Duq50FWxteB3fb/Zr21IZQOHAu231Uj016jNJjlR6zQnCOjWIUqxzKFQud//L51tvXa67Xjf55iI9VDuWyyF+7rp92lSOmYivGBd+nkWZH1YpRrHIoV8xRNvnIVzExv5heMYpVDuWK+bWLW7vuB7F2ok8n4B/i0h2wtoHAOBQx1Fca1UJBUlWUK0kvnWxhglwnYxTliqWQrZvKca5gzrlYc3Ppnc8VC5DNOcpJ4iM2SXrp2jXeVAfn6B8xbxSxadRVz2Vzbvy5MQ6qxEfu1QcjtWWNbM6Nf/9QTpl30lZskvTSyeYc/SMWjSI2jbrquWzOjT83W9u/SC+MvZySUvhc1fo37tvVnnaV0y5uPC40jqTV5+rr1WfDj+A2nEf9WSdwa2n/TNPNp76Fq4/VVufi9tWezY+UK+bV0vb419TjUk5DUtW5QVU7VVudG39ulFNDPuJAbEYoKwrZnBv//mnX49zMeTNMiwWV5o16V+oxU65YAo35Uou4KdeaLqdd/dOucsS0Hf3TtusnNkDQpxIopFoxTlgCWjFsReV1k0jLlWbLU/6kK6dFD47OOXPORVE7F7dFgxIMzrnJVU6PS6CQX9V0XHuu+bOOjHDOTa7+8e0dSSG/xrkm3BgHiVCda8LN2xMDcyqdm3jlpDXROdqTxidmc25yceud4mIocukLnltaLudaU45zriMef9LamgdcU248LiTidK7JOIBbZ3Nraf/EP2HgnEvkkFfpnEu/77S0PS5avba9DvbtjVYih8E5l87N23Oki7o6RzlROCkG59K5tetxrnfGlJRaZjeFx9OUXG27ftp0P2hb/7TreWKbuDnnsg+qFE/nXOr9LSUUUwoBFgxS4FRM7CAAAQhAAAIQgAAEIAABCEAAAhDofgK0EAIQgAAEIDDpCbBgMOmHAAAgAAEIQAACk4EAbYQABCAAAQhAAAIQgAAEIAABCECgGYGJv2DQrIXYIQABCEAAAhCAAAQgAAEIQAACEJj4BGgBBCAAAQhAAALjToAFg3FHTAEQgAAEIAABCDQjgB0CEIAABCAAAQhAAAIQgAAEIACBNU9gvBcM1nwLqQEEIAABCEAAAhCAAAQgAAEIQAAC402A/BCAAAQgAAEIdAEBFgy6oBNpAgQgAAEIQGB8CZAdAhCAAAQgAAEIQAACEIAABCAAge4nYMaCwWToZdoIAQhAAAIQgAAEIAABCEAAApObAK2HAAQgAAEIQAACGQiwYJABEi4QgAAEIACBTiZA3SAAAQhAAAIQgAAEIAABCEAAAhDofgLtaCELBu2gTBkQgAAEIAABCEAAAhCAAAQgAIE4ASwQgAAEIAABCECgIwiwYNAR3UAlIAABCECgewnQMghAAAIQgAAEIAABCEAAAhCAAAS6n0B3tJAFg+7oR1oBAQhAAAIQgAAEIAABCEAAAuNFgLwQgAAEIAABCEBgkhBgwaBLO7o0VDJXKo25dcqhXLFEssknZs+qVw7livnLJp+YPateOZQr5i+bfGL2rHrlUK6Yf8n3jSRmz6pXDknMXzZJzJ5VrxySmL9skpg9q145JDF/2SQxe1a9ckhi/uo79WHMnlWvHMoV81cdJDF7Vr1ySGL+skli9qx65ZDE/GWTxOxZ9cohifnLJonZs+qVQxLzV9+pD2P2rHrlUK6Yv+ogidmz6pVDEvOXTRKzZ9UrhyTmL5skZs+qVw5JzF82ScyeVa8ckpi/bJKYPateOSQxf9kkMXtWvXJIYv6ySWL2rHrlkMT8ZZPE7Fn1yiGJ+csmidmz6pVDEvOXTRKzZ9UrhyTmPzhQsqJ/jhCzZ9Urh3LF/FUHScyeVa8ckpi/bJKYPateOSQxf7VVbY7Zs+qVQ7li/rqX654es2fVK4dyxfzVVknMnlWvHJKYv2ySmD2rXjkkMX+1VW2O2bPqlUO5Yv6qgyRmz6pXDknMXzZJzJ5VrxySmL+UgoyfAAAQAElEQVTaqjbH7Fn1yqFcMX/Z5BOzZ9UrR2nIRd3VVknUIaNBOSQx99a2J/56um3l+MeEtPbGODTqlUPSqK+eyyapno92rxySWLxskpg9q145JDF/2SQxe1a9ckhi/rJJYvaseuWQxPz12KTHqJg9q145lCvmP7h8oHXPQ3yuWDltu37aNC8mpmIba29WvXIoV8xfNvnE7Fn1yqFcMf+29U+b7m+N7eQ8GwEWDLJxmnBePf3xJ2t5G5OWK81GOfE+KJWKefFE/dNypdmiCSOGtFxptki6qDotV5otmjBiSMvVrnGdVodItaPqtFxptmjCiCEtV5otki6qTsuVZosmjBjScjEOItC8Oo1bms2H5vpPy5Vmy1WId07LlWbzobn+03Kl2XIV4p3TcqXZfGiu/7RcabZchXjntFxpNh+a6z8tV5otVyHeOTXX44Pm4vNTPjrbf8jhc8W8U+sQC4ro03Kl2SLpourUXL6toc3R6GyGkMPninnzuBAjY5bWP23illqHeM2TLWntSbMlZ4tr03K1i1tLy1kRv4GltTVOKNmSlqul7Ul5Td2uctLamkwnrk3LlWaLZ0y2pOVKsyVni2vTcqXZ4hmTLWm50mzJ2eLa1Fz+sSk8RsXDM1lCDp8r5rxswXJzQzFrdr1yKFcsol3XT7vKMc80sI01OKM+5PC5ou7eFnyiDtkMIYfPFfNuF7fUMR+rXETfylyRIiadmgWDLu3y3sd81/o5ab3TQ5K3mYqRmM8RckUSBJv3ka8k4hZVK0Yy2copDg7qlZV/YVMKEgUUMZSqK7F+H3JF/ILN+9T8I34xdS3O5wi5Io7B5n1q/hG/mLoW53OEXBHHYPM+Nf+IX0xdi/M5Qq6IY7vGdaiDr0utXpH6xNS1OJ8j5Io4Bpv3qflH/GLqWpzPEXJFHIPN+9T8I34xdS3O5wi5guPITbB5n5r/SJdUTS3O5wi5It6Mg+FgsnILTD1b+Q/PkO1McRJ/c7SQKxIWbJVygn/EL6ZWjIRyYoSS9WImgVsyn5hWzCTNuA3etsL0rq5SsTSqd/jpHWOKVQ7litWn264ftVVtVtvFINbumF4xilUO5Yr58bgwnIzGtKTZuIZbZ3NrZf/0Pexfgw5vbu2sXfedVrYn5Kq1YPhBsLXhdXC7uFHO8P7VvU3S7P7WLm56bNJjlB6r9Jg1vLbNzxSjWOVQrljEPefcY4P9g1YaHMPzEB+rHMoVK6dd10+7yhFTsRVjsY61O6ZXjGKVQ7lifrLJR76KifnF9IpRrHIoV8yvXdyKifNisVqN1OsalTS7TkdGoslCIP6IniUan44l0LvMrG+hs8LykpUGin6VOJ8oRrHKoVwW+ZNNPvJVjBuiHLEQE7GJYLNicdD6+1fa0NCgPx7yUswpQyFWOZSLcrLyy8ZNfac+VF+O57hW36kPGQfV/svWP+3ixjio9kt1P5r+qcbm2Y+mHO6jxSLcxKBYzDPW5NtZ3IYWrrKVFy+xgcWrrLh8wEr9Q7lEMYpVDuWaLM8P1Fa1WW0Xg/HixuOCrpl6yXb9BG5teF1S7LLn1+3i1spyCv2xu4751zqDbXn908r2KFesRbLxeqHo+7Uq2e4H3Xadtqs97Xqce/iSB+3aT1xtD139X1v53+U2uLw/lyhGscqhXGv6+mnXdTrUpudv7SqnXdzadf3ExiH6dAIsGKTzmdDW3uVm0xYUbMZdPbbW7YVcohjFKkczCPKRr2IopycwF5Nm3Ep+cmfQLxoMrFph/SuX5xLFKFY5KCc7uzzc1IftGNfqQ/Wl6jYRx0Hj+Ou29jAOVl9fGqMaq+rjxn5vPJePfPOOafmPphzFKDaPKEZ1VF0b6994Lh/5KiZPGfJVjGKVozFv47l85KsYxeYRxShWORrzNp7LR76KyVOGfBWjWOVozNt4Lh/5KkaxeUQxilWOxryN5/KRr2LylCFfxShWORrzNp7LR76KUWweUYxilaMxb+N58YF+6z9/ia0891Fbfs5DuUQxilWOxryN56qL6qS65WmLfBWjWOVozNt4Lh/5KkaxeUQxilWOxryN52qz2i4G48mNx4XRPS7ArbO5dVv/tKs97SpH90DdC3VPzHMPla9iFKscjffNxnP5yFcxis0jilGscjTmbTyXj3wVk6cM+SpGscrRmLfxXD7yVYxi84hiFKscjXkbz+UjX8XkKUO+ilGscjTmbTxv1+Pcw5c/aFcdfbld+PJ/2HnP/3MuUYxilaOx/o3n7bp+2lVOu/qnXeXEuGWZ89PcoOZSlKOx3xvPNfZ1Deha0DWRRxSjWOVozMv52AmwYDB2hmSAAAQgAAEIQAACEIAABCAwUQlQbwhAAAIQgAAEIAABCNQIsGBQQ8EBBCAAgW4jQHsgAAEIQAACEIAABCAAAQhAAAIQ6H4CtBACrSPAgkHrWJIJAhCAAAQgAAEIQAACEIBAawmQDQIQgAAEIAABCEAAAm0kwIJBG2FTFAQgAIF6AhxDAAIQgAAEIAABCEAAAhCAAAQg0P0EaCEEJhIBFgwmUm9RVwhAAAIQgAAEIAABCECgkwhQFwhAAAIQgAAEIAABCHQVARYMuqo7aQwEINA6AmSCAAQgAAEIQAACEIAABCAAAQhAoPsJ0EIIQKCeAAsG9TQ4hgAEIAABCEAAAhCAAAS6hwAtgQAEIAABCEAAAhCAAARyEWDBIBcunCEAgU4hQD0gAAEIQAACEIAABCAAAQhAAAIQ6H4CtBACEGgvARYM2sub0iAAAQhAAAIQgAAEIACBMgG2EIAABCAAAQhAAAIQgECHEWDBoMM6hOpAoDsI0AoIQAACEIAABCAAAQhAAAIQgAAEup8ALYQABLqNAAsG3dajtAcCEIAABCAAAQhAAAKtIEAOCEAAAhCAAAQgAAEIQGDSEWDBYNJ1OQ2GgBkMIAABCEAAAhCAAAQgAAEIQAACEOh+ArQQAhCAQF4CLBjkJYY/BCAAAQhAAAIQgAAE1jwBagABCEAAAhCAAAQgAAEIQKDlBFgwaDlSEkJgrASIhwAEIAABCEAAAhCAAAQgAAEIQKD7CdBCCEAAAp1HgAWDzusTagQBCEAAAhCAAAQgMNEJUH8IQAACEIAABCAAAQhAAAITkAALBhOw06jymiVA6RCAAAQgAAEIQAACEIAABCAAAQh0PwFaCAEIQGAyEmDBYDL2Om2GAAQgAAEIQAACk5sArYcABCAAAQhAAAIQgAAEIACBBAIsGCRAQTWRCVB3CEAAAhCAAAQgAAEIQAACEIAABLqfAC2EAAQgAIHxIMCCwXhQJScEIAABCEAAAhCAwOgJEAkBCEAAAhCAAAQgAAEIQAACa4QACwZrBPvkLZSWQwACEIAABCAAAQhAAAIQgAAEIND9BGghBCAAAQhMTAIsGEzMfqPWEIAABCAAAQhAYE0RoFwIQAACEIAABCAAAQhAAAIQ6FICLBh0aceOrllEQQACEBgdgXXXW390gWsgas4661qh0LsGSqZICEAAAhCAAAQgAAEIdAoB6jGeBFzPFOvpnWpTpk63vmkzUkU+8lXMaOs0sLazFRsX7cktvWzTRLyPfBUz2vJ6N59qfXuvbVNftK7NePkGqSIf+SpmtOWttds6tt5rNrVNPrqVzfvU9qkiH/kqZrTlbXTgXNvluF3t2T/dzw7+06GpIh/5Kma05REHgU4jwIJBp/VIxvpstvl822L+ljZz5qyMEZPD7WMfP8lOPvWzdsBBh0yOBtNKCHQAgfd98MP2waOPsaPe9b5htenE6/FFLz7cjv7Isfbxk062vr5pw+rLCQS6hgANgQAEIAABCEAAAh1EYFLNX7iC9fb5yfS+PuudMsV6enqtUCikinzk26cYH2su+1Rdsdds5dyiDWxUtNJsZ6WpBSv1NBH5eF/FKFY5LOvfWj3Wt8/aNnWv2dY7f7pNmd1nrq8nVeQjX8Uo1nwOy/jXM2eKbfimebbBKze2WbvPsb6nTLee6T2pIh/5KkaxypGxOJu60XTb9dQ9bedjnmabHDzP1t5sbeud0Zcq8pGvYhSrHFnLmzKlL8ztaX5Pb2zLGlfwY0oxkg022DBrGH4QyEygkNkTxzVOoL4C//uOo+yt//tOe+Zez6pXT/rj3qlTTDfOaVOnTXoWABg7gbmbzjM9uZ05c+2xJ+vQDGNto57gVJ+gbLLppuacq7V0TVyP6iv1mdpVq0jdwfY77hTO+nqn+L7dPByzgQAEIAABCEAAAhCAQKcR6Kb6TKb5i14/AdzTM8W/Lip4Wf3aqFl/Oue8f8F6fKxyNPOv2vs3LtrQTL9Q0OPF56jqm+1L3rfkYxSrHM38q/a+Z86yvk2mmestWMHnqOqb7eWrGMX2PXNmM/eafYP/2cSm77C2ub6Cmf+vGZodeF/FTNt+bVvvFXObedfsOx29i22411Osd1qvuYKr6ZsdyFcxGzxzI9vp6J2budfsW261VZjb0/zeO975npq+2cFuu+9Zi3vt69/UzB07BHIT8JdQ7hgCIAABCEwKAm9/57tNT2732Xe/rm3vWNs4MNBvV/77CtP+0n/900ql0hplpb5Sn6ldSRX523l/sVWrVtr9CxbYXXfenuSCDgLjTYD8EIAABCAAAQhAAAJdSKDQ02s9PT1+4j/7RHMjBudcyKFc1uRvYHbJitN9WTkmtkek9LHKoVwjbA2KnvnTbMqGfWY9Y5hK9LFTNpxqytWQfsTpjD3m2NQtZ5jrdSNsWRWFKc6mb7WWKVezmI0PmWvr7rKe9UzpaeYatff6hY11d1nflCvqFDHMnDUzfNogYh6m1uve1Yo1+xp8dT046iYCY7jKuwlDK9pCDghAAAKTk8BvfnWOnXTCcfaH35/b8QCuuerfdsqJx9u3TvvqGl/c6HhYVBACEIAABCAAAQhAIEIANQRGEij0aKJ59JPbqzM6K/Qol6X+Dc30E8WtmNXzOUKu1NLMejedalZwTbwymH2OkKuJ64xdZpk+ldDEralZOZSrmeNG+zzFClMKzdya2pVDuZo6Jjjsf8DBCdrhqg2fspGtt/4Gw5WcQaDFBMZ+JbS4QqRrDwHnnM2es4715fzqnr7eXltn3fVGVUnd0NZaa0Zq7LRpa9msWbNTffIa9ZUpeXMWCr2W5/vj8tapE/z1/e2j7cuk+ouZfvhWeZPsMZ3i2s26xz/5Ul2da8GTnVjDGvRrrz1nVL85IjaFQv5b9Xi2cfbsOTbbS0MTM5329E4JT260zxSwBp1039D9YzRVUKzuZ1lj+3p7w73VufaNyax1m3R+NBgCEIAABCAAAQhAoKMIODe6+Yvpfv5Bz8uzNqavd2zPyZ3rMeda83ze+VzN6j00Ld/XEKXlU640u2xuTr6v6VFMkpQ8IuVKstXrpmw83Sz/S+H6FOG45EoWcoWz+GbmVrP9Qk0LCiw4U654SXHLVk99qmncxj3M9j/goDRzok3XwWhe2+p1u76COBar+Z9WiPr7igAAEABJREFUzislVh7lGiHQgithjdQ7d6EElAmsu94G9tb/PcpO+dTn7MPHfMxOOPEUO/qY4+ywI46M3pR0gzjiyP+x473vCad82j704Y/ayad+NsTtvufTy4nrtltvtY2d9MnPBNFk5/++413h+AMf+oi98U1vrXmeeErZZ9fd9rT9/A3v2OM+YR//xEl2zMc+HvK/5nVvzL2gUUvuD/bY8xn2kWM/bp84+dSQU/s3v/UdphuaN4/47+vttRe+6DB73wc/Yieecqod/ZFj7YRTPmVve/tRplz1Adttv2Nok9qpG2+9zTnnuX4y2A9/2cvrTeFYZSjumI8dH85jm77eXl+PMqPG8hWjeimPuOq8XrbeZrtQvuyNE7vP2Wc/z/lkO+GkU0Jfqo1v8WNip52fVp8i8/FTt97WPvChY3yffdo+ePQxIe/HP3Gyvfb1b7bYglRfb3bW1YqIl9pz0MGHVlXD9q/4n1eHNh/1nvcP0+tcca945WtMXD549EeDn+qq6+C9Hzg6TGDXB51wYrn/qhP1z3rOc0OM8uj78et9047XXW99E1tdLx859jj76HEnhDF11LveZ3pXQCx2r2c9x95+1HtM14jG4Yn+unvP+z9khxz6Qiv4xazGuPFso+qgdus6PfyIl5vYfPijx9kH/X2gWo/qWEz77kTdF3SvOclfUx/w9wLt1Rfzt9yqmqa2f/oz9g68dc3WlHUHWnhUnSQafzLtf+DBIUZ9pXP1newSsZROcsCBhwQ/3W903ijK9/o3vjXc747x9yLVQfV+2ZGvNC36NPqrXSpDot9PePVr3hAYKVb3M11fBxx0SGNY7Vx9+rGPn+THxafD9ag8um/pHlNz4gACEIAABCAAAQhAIBcBnLuDwLrr5Z+/0Ov917/xLeE5+XHHnxjmAvQc+13v/aApXxKZVj0nd84lpc+tc86Zc65pnOspNfXJ4lDyZWXJ1TOtNVOIBV9ellyFmT1Zqt/UxzlnWXJNmzPVWvGn9o0l13Ofu2+0Gn29vbZD5Xf5ok4VQ97Xts9/4YvDa+WjP/Ix23jupmGeR6/b3/fBD9u++x1QyVretXpeqZyVbScRaM3V3kktoi5RAlqlfNd73mtbzJ8/zGfOnDn29Kc/097pJyj1ruR6Y19vnx3z0Y/b7nvsaVPrPo2gyTjFHfGyV5gm6upjevqmmPJI3vTmt9lmm28Rzut9dNzb2xP0z3rOc+ygg59nM2bOlDqI8m+/w472rne/N5zn3Tx1m23spX6yfu21Z9dCp0zpsy232sre9Z73WV9vb02vA+ecvfXt77K9n/0c22CDDfykbEFq7zfFNt9ifsj1rGfvE3Ta/Oeee0Ld1cYdfD2lq8r8LZ/qJ8qnBvsO25d/YLVq037b7bYPtocffkSnUekfHLQVK5YH3x132nmYnyaN5222ebDpkxszZs4YZt9hxx2DrVgcsqVLl9Rs6qtDn/9CmzZtek3X1zvF5s+fb6989Wttp5yLBprsff0b3+wn3Nev5dOB8m+3/fb24Y98zNs2kKomzuVjXQ2cNm1aaNO0urpXbdpPmz492NeavpZOa6Jz9dO8zTaz173hTf5J4no1mw423PAp9l4/Ga/rQ+eS3ilTQi4dV0U5JL29vVVV6l59orEmthrPVec+z1s/Dvzu937Adtxxl6q6tj/okOfbi158mM2bt5npGpFB8U95yka2z7772evf9Gaphsl4tlF1ULsPOPAg2/Ppzwhje1jh/mT6WmsFXtN9H/jTEf9b+GvoDW99m+meUW9cd7317I3+HrH++hvWq23q1PL1M8Vfs8MMlZNCoSeU19PTY1N8X0ldjdFxVWSX1I+ZaZVxNGXa1Kpbbb/lVlv7+rzVttl2W1+HaTW96r3bHnuEe8fUqdNreh3U3+9e78fXDjvtNIyR+vsAv5jxope8VO7D5B1HvTf06VozymO2WCyGe4/uW699/RtNC6nDAjgRAQQCEIAABCAAAQhAYBIQmL7WDP/8O9/8hd7gozdGbrPtdsOek+s1wcYbb2zv/+DRtsX8LYfR4zn5MBycrEECt95ycyj9GXvtFfZJm6fv9ezwWli2u+++S7tEGc1r22l+rkXXylqzZtrb3vYOP5czfJ6nWlCr55Wqedl3FoFCZ1SHWow3AV307/QLAlMrk/4X/OPv9qUvfs5O+9pX7OqrrgzFa/LudW98Sziubp6z335Wncy6/rprg/9nTj3Ffv+7c23VqpXBbb/9Dwz7pM16669vDzzwgP3yF2fbV7/8RTvzzJ+NcNtkk7m25LHH7Men/8BOPv44++Y3vmpLliwJfuutv4HtuNPISVVr8qdJ4JUrV9gZP/2JnXzi8faV//uCLVq0MESt5+v0tN33DMfVzatf+wbTJK7O77zzDjv9B9+zT596ov36l+fYsieWSW0veNGLaxO8K1c+Geosw7Z+Ylz7quzytF2rh4GdnrRUFeqHOeusE05vuuHasE/b3HH77cG82eabh311s/U2W4eJxer5zg0T/Vv6RQvZ/nPP3doF0WLAgZV3Oj/y8MP2s5/+yD5z6sl2ztln2krPSk6veOWrTSvJOm4mG2zwFD+5+rZQj6GhIfvLn/9on//sp+wH3/uOXXvN1SF8+lrT7eWveFU4rm7ysq7GjXW/zjrrWrFYCmPx1FNOtC987tN2+223hrTqlxe88EXhWJtTTz7R5KNjyZX/viKcS3fP3XdKlSp9fqHtqHd/wKZWrrfLL7skXDsahxddeIGJV6FQsJe98pWe3+oFiKc/Yy/bb/8DQm5dE784+yz7lK/rT398ut13371B/9Snbm16p384adiMZxt1f1jx5Ar74+9/Z9/42pftm1//SkPp8dPqtXXRBef7a/Hz9vWvfMku/dc/Q4DYv/2d77a+vtUT9MGQc3PeX/4U+kh9VQ1Vf0lO8/Wt6mL7jTba2N7wprcEc//ggP35j3+wz3/mVPvWaV+3f//78qCf4Rc1j3r3e4f1WTBUNmqnxtS3vvG1cC878+c/NeWS+RnP3Mum1S1mbbb5fNt03jyZ7MYbrzf9BsQnPv5R+863TrMnlz8Z9Pvtf1DtyWBQsIEABCAAAQhAAAJdQYBGQCCdgF4jjGb+Qm9G1GtQZf/jH35nJxx3jH9efqyddcbP/GvBon8eX7AXvODFMgfhOXnAwKZDCPz97+eFmmjiPvaJ82c/97nB55577rEnnyy/bgyKus1YX9vqTW99U6fa9ddfZ5qL+Kqfy7v00otDCa2eVwpJ2XQkARYMOrJbWl+pHf2Esib8lFmT/X8778/2yMMP+Un0++1XvzjLrr/2GplMk5H1k1r9/f12g79JaKLvbD/Zv2jR/bZs2eN22SX/tH/87W8hRg/mczctT3wFRd3m/gUL/ETpl0w/NPrfBxfbo488XGctH/avWmVf/+qX7fbbbvGTa/228P4F9t1vn1Y2+u38hK8s8erUf03Ifs1PSt500/XW7xc2HnroQfvet78VJmoVWJ9T3zOuTzNIv8gvKpz+/e/YnXfcZsuXLberrrzCvnnaV21wcEhmO+TQ54e9Nrfeeot2Nm9e42T+tkFfjalfQNCnDzRRLIcbbrhOu1TRIo0c9IChrzvRsWTnXcqLEtUydqhbVFF/rLPuunKzG264Puy1eeGLX6Kdb9cy+4af7L3lpht9Xz5h111zlZ329a8FNqrbfvuVJ6yDc8rmgIMOrk1m/tRPaF984fm2dMljdvddd9gvzj7DbrrxhhC9qZ8UrX4t0mhZh0Qt2Hz3298IY3HFk8v9gs+jfpHq+6ZJcKXebLPV/bhq1QqvXx6eVMrW78eoYiSlUkmqVNl+551t9uzZwUcT478799fhWtM4/Ouf/2C/+fUvg00PxHvsuXrxSp+0kWFgoN/3yVf8wsuV/knAcrv1lpv8+D3NXz+PyBze6a++CicNm/FqoxYIv/TFz9ol/7rIHvDXyeLFDzSUnH76pz/83v76lz/aQw/91xYvXhR+IPlf/7woBOlJ/dN23TUcj3aja179o75SjmKxGPpQOvGULk32O7BuPJ/+Q/vnxReYPp1z/4J77dxf/cKu9PcCxWvBccutttLhCFmw4L4wpu6//75wL7vRX+N//O1vg5/6a9O6++Suu+0e9NqcfcYZpjpqbN137z32ve9+03Tt33LzjbbWWqs/eSXfjhcqCAEIQAACEIAABCAAgTESGO38xfbb7xhKfvSRR+wS/1pDrwn0yf0brr/Wzj7z53aDn9tY6Oc0gpPf8JzcQ+C/Ywg8+MBiP0/3cKhP0u8UzPNzT/o0uhzOrywu6LhRWvHa9h9/O8/OPuOnYS5Cc3maH1M5rZ5XUk6kMwlkWjDozKpTqzwE5m9Z/tidJtM02d8Y+6c//qGmml/3Eb1/XnSBX43/aZjoqzlUDqrvutWpVjC1b5SLL7zANAnWqK8/v+OO223lyuEro5p4rr7Ldv0NNqh3z3T84OLFphz1zv39K+1hv0gi3cabbKJdkC3mzw97bc4+4+faDRPlufyyfwXdnMqnA3SiJxvaa7Jz5sxZOgy/A6GJYj0x+dc/Lwy6Hf3kcTjwm+2238FvzZ544nE/cb88HKdtNPmuXPKpxup466230c70rmodbLbZFtoFqV+UuOmGG4NOiwizZq0dji+84PywiBJOKptHH3nI7rrzznA2d+6mYd9sM2/eZsFF73y/4/byO/WDorL5xdlnhtVoLSasWFH+NMpoWVdSjmm3fNmysBjVmOQ//yl/CqPKp9E+mvMtK4tcenf5H35/7ogUWkD70fe+G/ho/MtBvxWid7Dr+B9//1tYKNBxVTQOfvXLs6untsnckYt049nGW266aUSdapVpcqB6Va+Hetc//eF3fmJ9IKg233z1GA6KNm82rYz7/9xzT1j0aixeiwbqA+mr/avjerni8svqT8OxPj0QDvxmgw1Xf/XSY4896jXl/0MOPbS2+CaNnpBpgfYs/wTtiSeWSoVAAAIQgAAEIACBthGgIAisaQKjnb944oknQtX1ul3vhA4nlY3ezKPn1+dW3rwlNc/JRQHpJAIXXXh+qM7cTTcd8Rt6Bx58cLDp9bXmisJJwqYVr20vvuiCEZnHY15pRCEoOoYACwYd0xXjW5Hq5K4+VqQfAG2UV7/u9bUKNE6GOedMX1Pz3H33t9e87o3hR4D1A6zv+8DRtZjYgSaTY7aqfsF991UPh+31/f1S9PSs/soWnWeRhQsXJLpVn0D0FHpq9mp7NRn48MP/renrD6p17OnpsQ02KE/63esnmvWuZvnpdwm036nyTv8HH3zQrrqy/FVP+sol55zMtvXWW4f97bfdFvbNNqrT4kWLgtu2220X9rNmzQ6/96Cy9W5vvTO5t7fHNt20PIG/3XblRQl9pY3eKa+guRWbjvfdb39r7H+db7Nt+ZMRa8+e3fQHlpxzJj/lW7ggmbXqpXfGS7RYI9/RslbsWOXB/z6YmGLp0vKErMisDysAABAASURBVCuU+yjRKaey+hVSSx97LBp5x123h9X6JZWJ4802K/efAu5fkHxNLFpwv8xBtkp4l/t4tlHvmg8Fj2Kj6yEWVmU0d97IBZBYTKv1zq0ez4sWrmZcX44WPpctK78A2XyLLepNteN7/3NP7bh6sHLF6sVQ3T+qei046hrW+XOeu6+dcNKppuvwgAMPsdlzyl9bZq3/IyMEIAABCEAAAhCAAAQ6nsBo5y8uu7T8Rj99uveVr36tnXDiJ+31b3yr7bX3sxK/ApXn5B0/FCZdBa+5+uram+r2O2D113/r2xr0uwQCcsm/LtYuUZwb+2tbfbuA5nMaC2j1vFJjfs5bTmBMCVkwGBO+iRO87jrlr6hRjfXgmySySdbfYPUPm8yYOcPe/8EP27ve/T573qEvMH11z+ZbzLenPGWj2leuKGYsknQjUr5i829+kVuiDPSX37U80jgy6VM22ji4rVq5KuyTNv+tm2zepPJOZPlVJ3ar7/7faeddpLabbrze9K79lStXmCYJ9cNKhUKvrbPuesF+47XXhn2WzU03lb/aZ/PNy5+E2HmXp4WwhX5iU5OY99xdfof803bdLei3qixK3HpL+SuTpNy0bjJW72KfN28zaxT5SfTkqv7rj6RrFE1oyk/6ejY6T5OxsE7Lm8U2ODCY7JbhK4aSA+Pa2WvPDsZHHi5/hVA4abLZeOO5NY/FixfXjusP+gf7a08eNtp49adkqj7j2caxYNJXMVXr2Lh/7NHyO+2rzBrt7TgfPp6TFw1VjyWVBaD11kv+1FP8vqPo4bLELxR9+7Svm74aThbdJ3RNHnDQwaYfanufv+9W7xeyIxCAAAQgAAEIQKBMgC0Eup/AaOcv9CkC/X5i9Wtn9YbJbbbd1l70kpfaxz9xkl88eIvpk91Vgjwnr5Jg3ykEisVBu67ym5C77rGHVeddnv2c54Zjvan0ksrvASbVuRWvbTXPlJR70xbPKyWVga5zCLBg0Dl9Ma41qb6zXt95f9YZP7Mk+eUvzgr6v/7lz7W6vPOo99l665cnx5YsWWKXXXqJ6SN8+sHc73/3WzW/iXzw0H/LE4RTp02NNmO99VcvojxY993tN91U/sqf6mT+vC02Dzmurdzgqz9avIufzN9i/vxwg9e7iu+6p/z1P8G5yea668qLC/rx6bXWmmE7Vb7i6MbK7xNcV/n9iW232z7kX2+98qLE9deX45T+vw+ufnf93//219DPjWPgnLPPtHPOOiPYli9P/7qkpUseq32//waVT1yonGYyFta13K52NOyg0NM5t7Oljy8NdVt3vXXDPsvmobpFghhTPbnV7x4o33/rFrF03slSf/001nP2nDlB9cQTj4d9lk1Pi/v68aVLauM5ra5rzy7X9bElj2apZlOfRYvuDz8+/8XPf8Z0Xd53739q9dAYeO/7P2h6J0nTRDhAAAIQgAAEIAABCECgiwg8UflqobzzF0Kgr3899ZQT7DvfOs30e3L6DTXpC4WCbbPtdvb2d7xLpzXhOXkNBQcdQuCCf/w91ESv/Z9W+e27vfZ+dtDdcvNN4ffvwknCZjxf27Z6Ximh+pNL1eGt7ZwZtg4HNdGrt/D+8tfGDA722w1+IjlJrrnqymB7YNHC0Fx9L7+++08nN1x/nX3hs6fa73/7a/v3FZfZLX6ifOWq+DvyFTNR5J677wpV1ROIOXWfxAjKymZe5St9tJq7uG7B4Ibrrgsemsx/6tbbmm7oejeD3qkgQ3Uyf5tttrPtK79fsPiBB2qTgvJpJsqlnPLbbocdbO6m83Ro1197bdjf7PtCB+v6hYKtt9k2LBroidV9994jdZD6r0pZ9sSy0M83NIyD6665yq679upg06p2CIxstOL8eOWrfOpXmevdnXPhq1XqmY6Ftdgr/8xZM7UbIet00Ne4VL/Cas668QWDWbNmm9j09Za/cuteP1lcbdSmlT6unlf3G9d9quDuu8rjtmrr5P2GGz4lWr11K4wWLizfd+Q4OLT60yB9U6dJNUw2XL/8tWDDlGM40diqvijRV4jFUs2aNSuY7qvrq6AY4+axRx8x/WjVd771DfvUKSeZngQq5ZQpfbbt9tvrEIEABCAAAQhAYIIQoJoQgMDYCYxm/qKxVL0e1u/JfeX/Ph/epLOk8mnhTebOTXxTTiuek+t1sqSxLnnPlUPSLK405MyN5aPglQKUQ7kqp9Hd0MqiFVtQnnIoV7SgiqG4bKjpb2JWXFN3YqlcqU7euHLJqpa1T7l8ylH9L13ymC28v/xVufvsu79t7eeTpq81PeTS68ZwENmM52vbVs8rRZqAukMIsGDQIR0x3tW4557y19ZMmzbddtl19xHF6V2sr3zN6+3Vr3mDVb8Xrf4HOusnM6vBz9r7OdXDCb2/557VE69HvOwVI9qir2Xa+9nl1dylS5cMs+sHSTUBL+VLDnupdnbHHat/n0A/Bqwb9uzZs237HXcK9vofQQ2KDJs777w9eO2334HhK46eeOJxW7as/I5sfaVT9V0TL3zRYcGv+lVJ4cRv5FNddNh3v/1N71T36mH/ez59r9D/hx1x5DB97OT+heUHsM0238LmV37kt973hS8+PHy1ytEfOdY0MS7bWFg/+mj59wCqv9WgfFVR/vH8+pYNN9qoWlSmfXUyv693ih38vOePiNlm2+3tmI993MRm92fsFez6uqHqD33vf8BBid+xedhLXxZ8tbl/wb3atUzytjFPwWuvPdt22+PpI0L0uyiaFJdBT+i1lyys+12M6g98S1+VPfcqM6ue1+9LVv7asbQFwHr/6nH1twvmb7llbVGuatP+kENfGK49Hd99V/ZPCMk/SQ486Hn2spf/T/g+1Xr7ypVP+oXZ39RUc+bMqR1zAAEIQAACEIAABCAAgclAYDTzF329feH5tZ5jV+c0qqz0NaD/qvve9+obgVr9nLxUGqoWOeZ9llw9K8uvfcZcmE+QJVdpyaBfoPDOY/x3vtrK1SzNwAMrfHmumVtTuys5U65mjsvuWmp+xaCZW3N7sWQhV3PPqMf5//hbsOmT54cdfkQ4fuThh63+DaxBmbAZr9e24zGvlFD9TlFN+nqwYDDBh4C+PmOzzedbTGZX3nV9ww3X28qVK0Jrj/STVM96zj6mTxA450Lsu9/3Adtpp51th512suqkuN5Fq8luBR1wwMG26bzNdWh6Z/ThR7zcTwDuEc4n+ubJJ5fbPfeU342/5VZb2ZGveJVt+JSNTL85oJXct7/jPVad1Kx+NKy+zXdWFgj0Dn/p9S597SX6+iF9okDH1Ym/G64vfypBuqxy4/XXB9dqGbfdems4r25uurH81UhV+02V3z2o2rX/5z8v1M5P3q9jb3/nu0y/q+CcM72D+5DnvcAOP+Jlof/XWWfd4Ndsc9H5/7Dq+Hjdm97ix8OegdPaa8+x/fY/sDYRumjRQlvyWPkrXMbCuvouE3E89AUvCv2jOs7z4/Id73yPPy/otKWiB0Ql3GKLLW3HHXdJXGiRvVFuvulGW75sWVDvu98BdsCBh4TrRqyftuvu9srXvi7Y9EmQf19xeTjW5uKLL9DO9O6Btx/1LtMTXU18b7LJpvba17/JNt5442C/6cYbTGMrnIxxM9o25i32pX4haq+9n+XbNiPce56zz37hd1GUp3/VKruu8mkdnS9aVF6M0vHhLz0yXI867uubZloU29Hfq3SeJI9V3jkk24tefJgf7+tmGhsXXXB+GM/i/Za3vt122WXXMJ5nz54T+m+fffdTStNi3T133hGOx7LZdN6mttvue4bvU332c/a1vt7ekE5j5GWveGU41uaaq67SDoEABCAAAQhAoCUESAIBCKxJAuM5f6E3YOk3F/Uc+w1vekt4LeVcebJ5/fU3tH33PSA0XfMi1d9Ya/Vz8uKgFgz8bHgoaSybkpVzpefoXepfAxfTfTJZfY6Qq4nz4N0rWzahHnI1Ke+Jy5dYadBXrolfM7NyKFczvwV/XGjFgbGXpxzK1ay8NPutt9xUm8Obs846wfWiC88P+2ab8Xxt2+p5pWZtwb7mCPi7y5ornJLHTmCXp+1q//uOo6Ly4pccHgpZueJJO+3rXzNNUGpC7AUvfLF99LgT7JRPfS7EahJWjhf4SWCtvutYE5K33nyzDk1fufOOo95tJ5/62fDO6D2f/gy/sOBXX4N14m9O//63az8+uutuu9t73/8h39ZPm55oVCfhL7zgH3bVlVeMaOx115W/GkgGTaDfcfvwycSbbixP9su+4skVtclznWeVO267OUxmVv3rFyWkq/4ojo4l1a9K0nFVLjz/73bN1VeGU33tylv/952h/0848RTbZ7/9g15Pnn559lnhuNlGk7o/+8npwa2vd4q97Mj/sU+cfKp95Njj7KBDDg36/sEB+/WvfhGOq5vRstaDo/Ipz3Oeu2/oH43Ht/txOXPWTBNb2Vop99xdXkjq7e2xV/lJ/pNO+ZTNT/g0RWOZ/f0r/fX2ldp3Cx5w0MHhuhHrl//Pq/zk8JQQ8qff/9aGPKNw4jcX+ycAV/67PMb0w+Jvfuv/+nZ+1o56z/us+sPai+6/3878+U+8d2v+R9vGPKXr9xZ039GPjR13/Inh3nPo818YUuia+f73vu37b3k410b3nquu/LcO/QLD9Mr1+Fk74aRTbO9nP8eqn8QIDtVNZX/7bbdWjiww06c43uOv55oycrBgwb129pk/D1b9ONorXvWaMJ4//NHjTP0ngxY2vvHVr1j/4KBOxyTn/eUvtWv6+S98kZ1wyqfteH8taoxsWRlj+mqixx8f/qmmMRVKMAQgAAEIQAACEIAABNYggfGcv1Cz/v6387QLnwzWa6kT/XNsvUZ9/4c+bHrNKOPfzvurdkFa/Zy8WBy0oaHBMX2Njr4+Z8i/3lCuUMmUTe8ys8Jyv0BR9JLil2rysYVlJVOuVD9vHFq4ygYXrTIbGsOkuo/tX7DSlMunTP1fcfMTtuLWJ/wk/ujbVxwo2fIbfB6fK7Uwb3z4kgft4SsW22D/6Nun2If++YApl085pv/LLr20Fq+5kOp8Tk0ZORjP17atnleKNKG5Go9xJ8CCwbgjXrMF6MGmWoNHH3nIvvvtb9jdd91Vm8is2vS1OuecdYb97a9/qqrC/uc/+1H4zYKhoaFwrkk/Hegd+d/6xtd0GKRY9z12pdLqm2v9cXBM2BT9A1SC2qvKDwql4up8Xpn67yr1KFW+lqTRuZqrVPGr2tU+Lajo3f/Vd4bLVvRlawHlb3/9s533l+FsZJfcdeedtYm/xYsW+ePhk4nXXnuN3IJUv1oonOTYaILy4YcfChGq638qXzEVFH6jd0isWuVX+/2x+rL6dUX+dNj/L885yy6+6EJ79JFHhunVTn1V0pe/+AXT1ywNM6ac3HbrLXb2GT+rvZu+6qp8ixYttC9//nP2QOWri6o21X80rB995GH77rdOs8cfX71QpfGoRbDf/+5dY71EAAAQAElEQVRcq35tVmPfrz4vj6dqPar7xrFQ1Wv/i3PONI0J1Vnnkl7Xo11T0Sd1vn3a102T5Y3OasP3v/stu/zySxpN9ptfnWNanHq0oY/0zvZrr77Kvuev4cY6t6ONxeh1arUnxI0u1evxjttvC+OkOkarjdYiz1l+/Cys/MZKVa/9r395tl17zdVhkVPn6mvt9V2OP/zBd3QYpJHFo36c/PIXZ9XejSGnQuWdRTqusqrWTbqq3HjDdXa2vw8uWrjQP9Ev3/NkU73vuP1W++Y3vmqN11Ypw/2u6O8jylOqA7Ro0f32f1/4bPhIadU+tfJ7DVq4+4NfTKouyCkWgQAEIAABCEwGArQRAhCY3ARKda/TRzN/cem/LrbTf/A902tikezp6QmfGtbx0qVL7bvf/qZddsk/dRpkPJ6TDw30+zkB/6rDvwZQeyShsJSNfIIoxktxYFWK93DTlP8WrDRUMufF/OsNV8dwuOfqs+AjXx+juKk+x2pr+lH/tctsaFXJT+L7eRofXz8XFIsMPvIdKPrYIRu8xq90xJwb9I/+/iEbWjFktqpopcFS7bVng9uw08DS+4aY5YP22O8WD7Onndz27dttaFm/DTw5YEMDQx5pKc092NQ++Spm8PGVdutp5TfeBmOTTdH3Q8zlnxdfaEU/HmS/zs8FVI91LilVbCpf5/Uyute2zduqMlo9r6ScSOcRYMGg8/okU40+fuyHLYs0TjhpYu4H3/uWnXTCcX6y6nNhAuzkE4+3z3zqJLvu2qsTyz7317+0T3z8o/blL36+7P+J4+373zktTCxX63DNVf+uxWoSuapftuyJmr7xoOrz7ytWr5rW++jHieSj+tbr047VLsX86Q+/S3T70Q+/H7h96YufHWFftWqFnXXGT+3Tp55kp55yYmjrSSd8LPxA0gXn/32Ef1VRLA7aCccdE/Ke9o2vVNW1/dIljwWb6qX8NUPOg69+6Qshj/pCD4CN4af4flQZ6stGW/35X/70e9/3n7GTjz/WNKGtSUvlPPNnPxkxGVofFzu+/vprA7PPfuqTIZ/GiXic9rUv+8n95HdHj5a1Fh8+9+lP+rofF8r60hc/58fyseFJ309//IPA54uf+/SwqupcXH58+veH6asn+iEs2U/y10RVV92vXPFkGBMn+XHwKT8mJHfcdXvV3HS/ePEDpn775EmfMC2wfcMzOeG4Y01tqP4AdFISLU793xc+Y584/mP2Lb/ocMqJJ9hnP3WKaQFDi0eNMePZRrGRxK5T1eVrX/5iYK/7gs6rcpJnqtg//eF3pnGiMfr5z34qPFH/gu+nU085weo/gVONq+5/cfYZduLxH/XjtXyvEodv+mvsAb8YpbwSfVSz6l/dX3PVlfbJk04wjevPnHqyffUrX6qaTPcGxaluNWXdwfX+Pnja17/syz3Wvu7jVF/VW/eO6m+F1LlblvudrgeV+a/K14JV4/VVXV//yv+F+4euG42Rk48/LtRdL3aqfuwhAAEIQAACEIAABCAwkQnouXAWacX8hb4y+DN+fkOvBU772lfCc3o9H//8Zz5p9/6n/NuO9Sxb/Zxcr9UHVi23fr9wMDgw4Cd8/aSzn9gtpsqQyVcx/aueND8VX1/F1OOeAbOZdxZsyuKCFR73E779Jb94UEwV8z7yVcxaPtYNWua/0hNDtuLXD1n/5Uut/94VNvT4gJX6h1JFPvJVzIpfP2KlFcXM5Q0+tNIWfuJW++9ZD9iya5fawH9XhgWEIb+IEBP5LPO+illw0m02tNRDyljikwuW2T8O/6vd+PnrbfE/FtqyBU/Y4PL+VJGPfBVz/hF/s5UPZ1/w0RvTqtdG0c8t1VdzpZ+P0NiVXfNy9TYda35JNs2d6bxR8r621ZsXlU+vpRtzNZ43mVdqdOd8AhJgwWACdlqrqqwVey0g9Ffemd4s78MP/9eCf3/5nezN/CeyfcWTy0Nb699ZPpHbk1T3/sFB00fV9I5sPalJ8smj0ycTlE/jJE/caFj3D/aHuuvTH62oe7P66sndk35MSJr5JtlXrnzS7r//PtNEd+OTgCT/qm5ocMDuX3CvrfKLWVXdeO3H2sas9VrqF9D0RF1PzLPGVO9VeTno+tWipThmLavqp3G1ePEiU32ruvHc67rRGNHYHs9yyA0BCEAAAhAYPQEiIQABCKw5AtXXBFnnL/RaQJ8g0HN6vdbJUvNWPicvDQ3Y0OAqG/Cv5fpX+gWEFJGPfBWTpZ5JPlP8YsH0Bwq21t1ebm8i3ke+iknKlUU3eO8q67/0cVv1+0dt+TkPpYp85KuYLLmTfJ685jF75Gf326LP3GULPnZLqshHvopJypVFt/jvC+36U6+1f732Ajvv+X9OFfnIVzFZcrfbZzxf27Z6XqndbCgvToAFgzgbLBCAAAQmBwFaCQEIQAACEIAABCAAAQhAAAIQgED3E6CFEMhAgAWDDJBwgQAEIAABCEAAAhCAAAQg0MkEqBsEIAABCEAAAhCAAARaQYAFg1ZQJAcEIACB8SNAZghAAAIQgAAEIAABCEAAAhCAAAS6nwAthEBHEGDBoCO6gUpAAAIQgAAEIAABCEAAAt1LgJZBAAIQgAAEIAABCEBgYhBgwWBi9BO1hAAEOpUA9YIABCAAAQhAAAIQgAAEIAABCECg+wnQQghMEgIsGEySjqaZEIAABCAAAQhAAAIQgEAyAbQQgAAEIAABCEAAAhCAQJkACwZlDmwhAIHuJECrIAABCEAAAhCAAAQgAAEIQAACEOh+ArQQAhBoEQEWDFoEkjQQgAAEIAABCEAAAhCAwHgQICcEIAABCEAAAhCAAAQg0C4CLBi0izTlQAACIwmggQAEIAABCEAAAhCAAAQgAAEIQKD7CdBCCEBgwhBgwWDCdBUVhQAEIAABCEAAAhCAQOcRoEYQgAAEIAABCEAAAhCAQPcQYMGge/qSlkCg1QTIBwEIQAACEIAABCAAAQhAAAIQgED3E6CFEIAABGoEWDCooeAAAhCAAAQgAAEIQAAC3UaA9kAAAhCAAAQgAAEIQAACEMhOgAWD7KzwhEBnEaA2EIAABCAAAQhAAAIQgAAEIAABCHQ/AVoIAQhAoI0EWDBoI2yKggAEIAABCEAAAhCAQD0BjiEAAQhAAAIQgAAEIAABCHQSARYMOqk3qEs3EaAtEIAABCAAAQhAAAIQgAAEIAABCHQ/AVoIAQhAoKsIsGDQVd1JYyAAAQhAAAIQgAAEWkeATBCAAAQgAAEIQAACEIAABCYXARYMJld/09oqAfYQgAAEIAABCEAAAhCAAAQgAAEIdD8BWggBCEAAArkIsGCQCxfOEIAABCAAAQhAAAKdQoB6QAACEIAABCAAAQhAAAIQgEBrCbBg0FqeZGsNAbJAAAIQgAAEIAABCEAAAhCAAAQg0P0EaCEEIAABCHQYARYMOqxDqA4EIAABCEAAAhDoDgK0AgIQgAAEIAABCEAAAhCAAAQmGgEWDCZaj3VCfakDBCAAAQhAAAIQgAAEIAABCEAAAt1PgBZCAAIQgMCkI8CCwaTrchoMAQhAAAIQgAAEzGAAAQhAAAIQgAAEIAABCEAAAhBoJMCCQSORiX9OCyAAAQhAAAIQgAAEIAABCEAAAhDofgK0EAIQgAAEINByAiwYtBwpCSEAAQhAAAIQgMBYCRAPAQhAAAIQgAAEIAABCEAAAhBoPwEWDNrNnPIgAAEIQAACEIAABCAAAQhAAAIQ6H4CtBACEIAABCAwAQmwYDABO40qQwACEIAABCCwZglQOgQgAAEIQAACEIAABCAAAQhAoBsJsGAwvFc5gwAEIAABCEAAAhCAAAQgAAEIQKD7CdBCCEAAAhCAAAQSCLBgkAAFFQQgAAEIQAACE5kAdYcABCAAAQhAAAIQgAAEIAABCEBgNAQm1oLBaFpIDAQgAAEIQAACEIAABCAAAQhAAAITiwC1hQAEIAABCEBgjRBgwWCNYKdQCEAAAhCAwOQlQMshAAEIQAACEIAABCAAAQhAAAIQ6EwCrVww6MwWUisIQAACEIAABCAAAQhAAAIQgAAEWkmAXBCAAAQgAAEIdCmBti8Y7LrHMw2BAWOAMcAYYAwwBjp1DFAvxiZjgDHAGGAMMAYYA4wBxgBjgDHAGGAMMAbW5Bhoz1pEciltXzBIrgZaCEAAAhCAAAQgAAEIQAACEIAABFpCgCQQgAAEIAABCEBglATatmBw7VWXGwIDxgBjgDHAGGAMjG0MwA9+jAHGAGOAMcAYYAwwBhgDjAHGAGOAMcAY6P4xoD4e5Zz/mMLatmAwploSDAEIQAACEIAABCAAAQhAAAIQ6A4CtAICEIAABCAAAQh0LAEWDDq2a6gYBCAAAQhMPALUGAIQgAAEIAABCEAAAhCAAAQgAIHuJ9C9LWTBoHv7lpZBAAIQgAAEIAABCEAAAhCAQF4C+EMAAhCAAAQgAIFJTIAFg0nc+TQdAhCAwGQjQHshAAEIQAACEIAABCAAAQhAAAIQ6H4CtHD0BFgwGD07IiEAAQhAAAIQgAAEIAABCECgvQQoDQIQgAAEIAABCEBgHAmwYDCOcEkNAQhAAAJ5COALAQhAAAIQgAAEIAABCEAAAhCAQPcToIWdTIAFg07uHeoGAQhAAAIQgAAEIAABCEBgIhGgrhCAAAQgAAEIQAACE5oACwYTuvuoPAQgAIH2EaAkCEAAAhCAAAQgAAEIQAACEIAABLqfAC2c3ARYMJjc/U/rIQABCEAAAhCAAAQgAIHJQ4CWQgACEIAABCAAAQhAIJUACwapeDBCAAIQmCgEqCcEIAABCEAAAhCAAAQgAAEIQAAC3U+AFkJgfAmwYDC+fMkOAQhAAAIQgAAEIAABCEAgGwG8IAABCEAAAhCAAAQgsIYJsGCwhjuA4iEAgclBgFZCAAIQgAAEIAABCEAAAhCAAAQg0P0EaCEEJjoBFgwmeg9SfwhAAAIQgAAEIAABCECgHQQoAwIQgAAEIAABCEAAAl1PgAWDru9iGggBCDQngAcEIAABCEAAAhCAAAQgAAEIQAAC3U+AFkIAAs0IsGDQjBB2CEAAAhCAAAQgAAEIQKDzCVBDCEAAAhCAAAQgAAEIQGDMBFgwGDNCEkAAAuNNgPwQgAAEIAABCEAAAhCAAAQgAAEIdD8BWggBCKx5AiwYrPk+oAYQgAAEIAABCEAAAhDodgK0DwIQgAAEIAABCEAAAhCYAARYMJgAnUQVIdDZBKgdBCAAAQhAAAIQgAAEIAABCEAAAt1PgBZCAAKTgQALBpOhl2kjBCAAAQhAAAIQgAAE0ghggwAEIAABCEAAAhCAAAQg4AmwYOAh8A+BbiZA2yAAAQhAAAIQgAAEIAABCEAAAhDofgK0EAIQgEArCLBg0AqK5IAABCAAAQhAAAIQgMD4ESAzBCAAAQhAAAIQgAAEIACBthBgwaAtmCkEAjEC6CEAAQhAAAIQgAAEIAABCEAAAhDoaoKh+AAAAdBJREFUfgK0EAIQgMDEIMCCwcToJ2oJAQhAAAIQgAAEINCpBKgXBCAAAQhAAAIQgAAEIACBLiHAgkGXdCTNGB8CZIUABCAAAQhAAAIQgAAEIAABCECg+wnQQghAAAIQKBNgwaDMgS0EIAABCEAAAhCAQHcSoFUQgAAEIAABCEAAAhCAAAQgkJEACwYZQeHWiQSoEwQgAAEIQAACEIAABCAAAQhAAALdT4AWQgACEIBAuwiwYNAu0pQDAQhAAAIQgAAEIDCSABoIQAACEIAABCAAAQhAAAIQ6BgCLBh0TFd0X0VoEQQgAAEIQAACEIAABCAAAQhAAALdT4AWQgACEIBA9xBgwaB7+pKWQAACEIAABCAAgVYTIB8EIAABCEAAAhCAAAQgAAEITCICLBhMos4e3lTOIAABCEAAAhCAAAQgAAEIQAACEOh+ArQQAhCAAAQgkJ0ACwbZWeEJAQhAAAIQgAAEOosAtYEABCAAAQhAAAIQgAAEIAABCLSQAAsGLYTZylTkggAEIAABCEAAAhCAAAQgAAEIQKD7CdBCCEAAAhCAQCcRYMGgk3qDukAAAhCAAAQg0E0EaAsEIAABCEAAAhCAAAQgAAEIQGBCEfh/AAAA//8W3Ud4AAAABklEQVQDAAwaku7pwNWXAAAAAElFTkSuQmCC" class="kg-image" alt="The Week AI Broke My Confidence But Made Me a Better Engineer" loading="lazy"><figcaption>my github commit tally for 2025</figcaption></figure><p>For the first time, many of my projects actually made it <strong>past launch day</strong>.</p><h2 id="the-power-of-faster-failure"><strong>The Power of Faster Failure</strong></h2><p>I started asking myself</p><blockquote>&#x201C;Would I rather spend one day building a prototype and discover the idea doesn&apos;t work &#x2014; or spend three months building it and learn the same thing?&#x201D;</blockquote><p>I know my answer. With AI, my idea can go wider into territories that I didn&#x2019;t explore before simply because I didn&#x2019;t want to spend time learning a new language or a framework. For instance, building an iOS app has always been something I want to do, but building a Swift app isn&#x2019;t really relevant to my backend and ML background. </p><h2 id="everyone-can-build-software-now"><strong>&quot;Everyone Can Build Software Now&quot;</strong></h2><p>A common claim on X these days is that <strong>everyone can build software now</strong>. That&#x2019;s true, but I don&#x2019;t believe everyone would want to make their own software. Though the entry barrier has been reduced significantly, it still requires you to have some basic engineering knowledge to build it. An analogy I often think about is writing. Everyone knows how to write, but how many people want to write a book?</p><p>AI only exacerbates the gap between the competents and the incompetents, not narrowing it. If you have always been a builder, you can build and iterate faster than ever. Most people, even engineers at FAANG, don&#x2019;t want to become a 10x engineer, they just want to do their job and go offline. Not everyone will become AI native engineer. When you are a doctor, or most other professions, what you learn in school can be relevant long after you graduate. Seldom that you have to update your knowledge base. Adaption has always been the unique trait of being an engineer. That&#x2019;s why we are rewarded with the generous compensation packages that other industries can only be envious of. The nature of our career is still the same as ever. New tools have come out every couple of years. From jQuery to React and NextJS, or Java being overthrown by JavaScript and Python in popularity and practicality. Learning new tools is a requirement of the job. AI has essentially solved coding per Borris Cherny, but coding isn&#x2019;t engineering. Engineers are getting paid for the productivity output, not for our magic to manipulate 0s and 1s. AI models have helped our jobs become easier, so now we can move on to focus on the important part, which is deciding what to build. Until the day that AI can solve decision making and perfectly build what is thinking precisely, I am still an AI maximalist. </p><h2 id="a-strange-conclusion"><strong>A Strange Conclusion</strong></h2><p>Ironically, the technology that initially made me fear for my career has made me a far better engineer.</p><p>My output has increased at least two to three times.I experiment more.I ship more.</p><p>And most importantly, I spend more time thinking about the <strong>decisions behind the code</strong>, not just the code itself.<br></p>]]></content:encoded></item><item><title><![CDATA[Philosophical as Improv]]></title><description><![CDATA[<p>Joining Improv was one of the highlights for me in 2025. My goal was simple: to hold a conversation with anyone I crossed paths with in a way that allowed genuine human connection. As it turned out, improv was not only joyful, but unexpectedly philosophical. This depth did not come</p>]]></description><link>https://tamnguyen.io/philosophical-as-improv/</link><guid isPermaLink="false">697e8a805a92ba03cc46c9ea</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sat, 31 Jan 2026 23:07:36 GMT</pubDate><media:content url="http://tamnguyen.io/content/images/2026/01/kyle-hinkson-sxj2FDJ0G50-unsplash.jpg" medium="image"/><content:encoded><![CDATA[<img src="http://tamnguyen.io/content/images/2026/01/kyle-hinkson-sxj2FDJ0G50-unsplash.jpg" alt="Philosophical as Improv"><p>Joining Improv was one of the highlights for me in 2025. My goal was simple: to hold a conversation with anyone I crossed paths with in a way that allowed genuine human connection. As it turned out, improv was not only joyful, but unexpectedly philosophical. This depth did not come from the instructors alone, but from the very nature of improv itself.</p><p>Most of the lessons empowered me to reflect on presence, identity, and especially trust. Although we weren&#x2019;t trying to be funny, a series of simple games led us into surprisingly deep territory. Frankly, one can learn a lot more about oneself through improv.<br></p><p>In the very first session, we learned a simple but enlightening practice that is &#x201C;Yes and&#x2026;&#x201D;. The exercise aims to embolden the very first principle of Improv that is acceptance. &#xA0;The exercise embodies the core principle of improv, which is acceptance. When on stage, because there is no script for improvisers, scenes are inherently unpredictable. The exercise teaches partners to embrace what is offered, creating openness that allows the story to move forward. <br></p><p>It resonates with the philosophical point of view on life very much. Before my prefrontal cortex fully matured, I held an unexamined belief that grit and hard work alone could take a person anywhere. That belief began to unravel as life confronted me with persistent challenges, the ones I had no choice but to face in order to move forward. &#x201C;Yes and&#x201D; is a reminder that you should accept the cards you were dealt and make the most out of it. You can&#x2019;t just be a child and demand another hand. The sooner you make peace with yourself and accept the rules of the game, the more resilient you will be. Instead of being discouraged, you should feel fortunate that you have learned how the game works, and tackle it head on. <br></p><p>Beyond the theater, I began to see how improv speaks directly to my work as a software engineer. Building software is rarely a linear process; requirements change, systems behave in unexpected ways, and collaboration often matters more than individual brilliance. The principle of &#x201C;Yes, and&#x2026;&#x201D; mirrors how strong engineering teams operate, as they have to accept constraints, and build on partial information, and move forward together rather than resisting reality. Improv trains the same muscles good engineering demands: presence, adaptability, and trust. In that sense, learning improv isn&#x2019;t a detour from engineering. It&#x2019;s a way of becoming better at it.<br></p><blockquote>Later on, I learned from Vinh Giang that &#x201C;Yes and&#x2026;&#x201D; is a popular framework for public speakers as well. </blockquote><p>The other practice that impressed me deeply was sending love into our acts and towards the partners. In this practice, we stood in a circle and each person had to call someone&#x2019;s name and show some affectionate gestures while walking slowly towards them. The sender also has to maintain eye contact with the person they are calling. Once the sender comes to the receiver, the receiver restarts the process again to someone else. <br></p><p>The meaning of the exercise was simple, almost obvious. Yet its impact was anything but. Beyond improv, it felt like a principle that applies to anything worth doing in life: how intention changes the quality of action. I know this may sound like a familiar, even clich&#xE9; idea&#x2014;something we&#x2019;ve all heard before. But experienced in the right context, it carries a quiet force. It lingers. It leaves a lasting impression. I always felt refreshed and deeply in love with Improv after every class.<br></p><p>The whole experience as a whole invites a continued flow of reflection rather than demanding attention. I am grateful to myself for pushing me out of my comfort zone to enter the unknown but rewarding land of improv. I can&#x2019;t wait to see what awaits ahead in my Foundation 2.</p>]]></content:encoded></item><item><title><![CDATA[llama-stack hands on with ollama and agent loop (with code)]]></title><description><![CDATA[That's where llama-stack comes in. It's gunning to be the production-ready framework that built to handle the real-world grind and unify the AI space where each of the domains (except for inference) don’t have a clear dominant leaders and very fragmented.]]></description><link>https://tamnguyen.io/llama-stack-hands-on-with-ollama-and-agent-loop-with-code/</link><guid isPermaLink="false">6796d1ff5a92ba03cc46c9cc</guid><category><![CDATA[tech]]></category><category><![CDATA[ai]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Mon, 27 Jan 2025 00:25:58 GMT</pubDate><media:content url="http://tamnguyen.io/content/images/2025/01/Screenshot-2025-01-26-at-3.43.10-PM.png" medium="image"/><content:encoded><![CDATA[<img src="http://tamnguyen.io/content/images/2025/01/Screenshot-2025-01-26-at-3.43.10-PM.png" alt="llama-stack hands on with ollama and agent loop (with code)"><p><strong>Disclaimer</strong>: All of this writing is from my personal perspective from my experience of using mentioned products and from when I contributed to the llama-stack as an open-source contributor</p><p>This week, Meta released llama-stack, which aims to provide a production ready upgrade for enterprises to use LLM for their business. When you dive into using AI for your business, you&apos;re not just playing around with models; you need to get that AI into the hands of your customers, whether internal or external. That&apos;s where llama-stack comes in. It&apos;s gunning to be the production-ready framework that built to handle the real-world grind and unify the AI space where each of the domains (except for inference) don&#x2019;t have a clear dominant leaders and very fragmented.</p><hr><h2 id="background">Background</h2><h4 id="whats-the-deal-with-llama-stack">What&apos;s the Deal with Llama Stack?</h4><p>Think of Llama Stack as a secure fortress for your AI models. It&#x2019;s like having a dedicated server, but way more structured. You can set up your AI environment like a website or a walled-off zone for your sales or marketing squads. The big deal is that it <strong>keeps your AI stuff completely separate from your main production environment</strong>. It&apos;s like having your AI in a sealed-off box. And from an engineer perspective, this is good because if that box explodes tomorrow, the business keeps running. If you&apos;re not thinking about your AI infrastructure this way, you&#x2019;re probably playing with fire.</p><h4 id="llama-stacks-killer-features">Llama Stack&apos;s Killer Features:</h4><p><strong>Multiple Access Points, Not Just Inference</strong>: With Llama Stack, you can do more than just asking questions, it allows you to control your AI system at multiple points.</p><ul><li><strong>Agents</strong>: For complex interactions and tasks</li><li><strong>External Memory:</strong> Store and retrieve data for your model</li><li><strong>Evaluations:</strong> Test and fine-tune your model</li><li><strong>Synthetic Data:</strong> Use pre-trained data</li><li><strong>Batch Processing:</strong> Handle multiple requests at once</li><li><strong>Safety Protocols:</strong> With models like LL Guard to keep things safe</li><li><strong>Telemetry:</strong> Connect to external systems safely</li></ul><p><strong>Individualized Endpoints:</strong> Unlike typical software, AI models have different needs. You have to treat agents, inference, memory, safety, and telemetry as unique entities. Llama Stack gets this and handles them individually, making it way more robust.</p><p><strong>Programming Language Agnostic</strong>: Llama Stack speaks your language, whether it&apos;s Python, Swift, Node, Kotlin. It has SDKs for all of these, so you can jam AI into your current setup.</p><p><strong>Plug-and-Play Flexibility:</strong> Llama Stack is all about frameworks. It&apos;s plug-and-play. It&apos;s like a header for a website. Change your model, swap things around, no need to tear down your whole backend.</p><p><strong>LL Guard is Your Safety Net:</strong> LL Guard is a trained Llama model that classifies inputs and flags bad stuff like weapons or self-harm. <strong>But remember, no model is 100% secure You still need extra layers of security.</strong></p><hr><h2 id="getting-your-hands-dirty">Getting Your Hands Dirty</h2><p>Before we start, since llama-stack is trying to unify a lot of components together, some of the terminologies that I gonna use in this tutorial may sound unfamiliar to you, if you feel free to check out the glossary <a href="https://llama-stack.readthedocs.io/en/latest/concepts/index.html" rel="nofollow ugc noopener">here</a> by the llama-stack team.</p><p>And for this tutorial, we will use <em>llama-stack</em> with <em>ollama</em> as our provider and Python as the client.</p><h4 id="whats-the-agent-execution-loop">What&apos;s the Agent Execution Loop?</h4><p>At its core, an agent is more than just a language model. It&apos;s a sophisticated system that combines <strong>inference, memory, safety checks, and tool usage</strong> into a coherent workflow. The Agent Execution Loop is how these components come together to process user requests, step by step.</p><h4 id="the-play-by-play"><strong>The Play-by-Play</strong></h4><p>Here&apos;s a breakdown of the key steps in the loop:</p><p><strong>Initial Safety Check:</strong> The user&apos;s input is screened through safety shields. This is your first line of defense against any malicious or inappropriate content. Think of it as a bouncer at an exclusive club, checking IDs before anyone gets in.</p><p><strong>Context Retrieval</strong>: If you have Retrieval Augmented Generation (RAG) enabled, the agent queries your memory banks for relevant documents. Any new documents are also added to the memory bank. This ensures the agent always has the context it needs and allows it to learn over time.</p><p><strong>Inference Loop:</strong> This is where the Large Language Model (LLM) works its magic:</p><ul><li>The agent takes the user&apos;s prompt and adds any retrieved context and/or previous tool outputs to augment the prompt.</li><li>The LLM then generates a response, which might include tool calls.</li><li>If there is a tool call, it then executes.</li></ul><p><strong>Tool Execution:</strong> If the LLM wants to use a tool:</p><ul><li>The tool inputs are checked for safety.</li><li>The appropriate tool is then executed (think web search, code execution, etc.).</li><li>The tool&apos;s response is fed back to the LLM so it can synthesize everything together.</li><li>The loop continues as long as there are tool calls or it reaches a stop condition.</li></ul><p><strong>Final Safety Check</strong>: Finally, before the agent&#x2019;s response is sent to the user, it&#x2019;s screened through the safety shields one more time.</p><figure class="kg-card kg-image-card"><img src="https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07c7a0ad-e95d-4ab7-9593-b1d38362365e_1788x1790.png" class="kg-image" alt="llama-stack hands on with ollama and agent loop (with code)" loading="lazy"></figure><p><a href="https://llama-stack.readthedocs.io/en/latest/building_applications/agent_execution_loop.html" rel="nofollow ugc noopener">Image from llama-stack official doc</a></p><p>This loop continues until one of three things happens:</p><ul><li>The LLM provides a final response without any tool calls.</li><li>The maximum number of iterations is reached.</li><li>The token limit is exceeded.</li></ul><p><strong>Set up</strong>: First we will have to start the distribution .</p><pre><code>git clone git@github.com:meta-llama/llama-stack.git
cd llama-stack
pip install -e .</code></pre><pre><code># export environment variables
export INFERENCE_MODEL=&quot;meta-llama/Llama-3.2-3B-Instruct&quot;
export LLAMA_STACK_PORT=8321</code></pre><p>For this tutorial, I decided to go with Ollama serving since it&apos;s don&apos;t require any api key and is one of the easiest way to spin up a serving from your local machine. But llama-stack offers many more providers like AWS and HuggingFace, so if you decide to go with another provider, you can skip this step below</p><pre><code># Terminal 1 for ollama inference
ollama run llama3.2:3b-instruct-fp16 --keepalive 60m</code></pre><p>After you have the ollama serving running, you can check to make sure it&apos;s running in the right port by checking out http://localhost:11434/ in your browser!</p><figure class="kg-card kg-image-card"><img src="https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56bf2f1d-cb02-4aed-87fb-8400e8754a71_794x442.png" class="kg-image" alt="llama-stack hands on with ollama and agent loop (with code)" loading="lazy"></figure><p>Once <em>ollama</em> is running, you can open a new terminal in parallel and run these commands:</p><pre><code># Terminal 2 for llama-stack distro build
llama stack build --template ollama --image-type conda
conda activate llamastack-ollama
llama stack run ./distributions/ollama/run.yaml</code></pre><p>Then you will see the distro starting to serve all the APIs that you need for your agent like this:</p><figure class="kg-card kg-image-card"><img src="https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1feab359-9db5-4a4c-a9c2-67d32793123f_2180x1244.png" class="kg-image" alt="llama-stack hands on with ollama and agent loop (with code)" loading="lazy"></figure><p>Now, let&apos;s get to the good part where the magic of LLM and agentic system happen:</p><pre><code>import os

from llama_stack_client.lib.agents.agent import Agent
from llama_stack_client.lib.agents.event_logger import EventLogger
from llama_stack_client.types.agent_create_params import AgentConfig
from llama_stack_client.types import Document


def create_http_client():
    from llama_stack_client import LlamaStackClient
    return LlamaStackClient(
        base_url=f&quot;http://localhost:{os.environ[&apos;LLAMA_STACK_PORT&apos;]}&quot;
    )


client = create_http_client()


urls = [&quot;chat.rst&quot;, &quot;llama3.rst&quot;, &quot;datasets.rst&quot;, &quot;lora_finetune.rst&quot;]
documents = [
    Document(
        document_id=f&quot;num-{i}&quot;,
      content=f&quot;https://raw.githubusercontent.com/pytorch/torchtune/main/docs/source/tutorials/{url}&quot;,
        mime_type=&quot;text/plain&quot;,
        metadata={},
    )
    for i, url in enumerate(urls)
]

# Register a vector database
vector_db_id = &quot;test-vector-db&quot;
client.vector_dbs.register(
    vector_db_id=vector_db_id,
    embedding_model=&quot;all-MiniLM-L6-v2&quot;,
    embedding_dimension=384,
)


# Insert the documents into the vector database
client.tool_runtime.rag_tool.insert(
    documents=documents,
    vector_db_id=vector_db_id,
    chunk_size_in_tokens=512,
)

agent_config = AgentConfig(
    model=os.environ[&quot;INFERENCE_MODEL&quot;],
    instructions=&quot;You are a helpful assistant&quot;,
    # Enable both RAG and tool usage
    toolgroups=[
        {&quot;name&quot;: &quot;builtin::rag&quot;, &quot;args&quot;: {&quot;vector_db_ids&quot;: [&quot;test-vector-db&quot;]}},
        &quot;builtin::code_interpreter&quot;,
    ],
    # # Configure safety
    input_shields=[&quot;llama_guard&quot;],
    output_shields=[&quot;llama_guard&quot;],
    # Control the inference loop
    max_infer_iters=5,
    strategy={&quot;type&quot;: &quot;top_p&quot;, &quot;temperature&quot;: 0.7, &quot;top_p&quot;: 0.95},
    enable_session_persistence=True,
)

agent = Agent(client, agent_config)
session_id = agent.create_session(&quot;monitored_session&quot;)

# Stream the agent&apos;s execution steps
response = agent.create_turn(
    messages=[
        {
            &quot;role&quot;: &quot;user&quot;,
            &quot;content&quot;: &quot;Analyze this doc and help me write some code to finetune a model from scratch&quot;,
        }
    ],
    documents=documents,
    session_id=session_id,
)

for log in EventLogger().log(response):
    log.print()</code></pre><p>If you run this code, voila, you will see a similar answer that give you a well-defined answer like this:</p><pre><code>21:59:04.942 [INFO] HTTP Request: POST http://localhost:11434/api/generate &quot;HTTP/1.1 200 OK&quot;
22:00:08.165 [END] create_and_execute_turn [StatusCode.OK] (78883.38ms)
 21:58:49.545 [INFO] HTTP Request: GET https://raw.githubusercontent.com/pytorch/torchtune/main/docs/source/tutorials/chat.rst &quot;HTTP/1.1 200 OK&quot;
 21:58:49.802 [INFO] HTTP Request: GET https://raw.githubusercontent.com/pytorch/torchtune/main/docs/source/tutorials/llama3.rst &quot;HTTP/1.1 200 OK&quot;
 21:58:50.038 [INFO] HTTP Request: GET https://raw.githubusercontent.com/pytorch/torchtune/main/docs/source/tutorials/datasets.rst &quot;HTTP/1.1 404 Not Found&quot;
 21:58:50.327 [INFO] HTTP Request: GET https://raw.githubusercontent.com/pytorch/torchtune/main/docs/source/tutorials/lora_finetune.rst &quot;HTTP/1.1 200 OK&quot;
 22:00:08.136 [INFO] Assistant: Here is the code that corresponds to the specification:

```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

# Load pre-trained model and tokenizer
model_name = &quot;google/llama2-base&quot;
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)

# Define hyperparameters
batch_size = 2
max_length = 512

# Create a dataset class to load the data from disk
class Dataset(torch.utils.data.Dataset):
    def __init__(self, tokenizer, text_file):
        self.tokenizer = tokenizer
        self.text_file = text_file
        self.filedir = f&quot;filedir_{text_file}&quot;
        if not os.path.exists(self.filedir):
            os.makedirs(self.filedir)
        with open(f&quot;{self.filedir}/{text_file}&quot;, &quot;r&quot;) as f:
            self.texts = [line.strip() for line in f.readlines()]

    def __getitem__(self, idx):
        text = self.texts[idx]
        inputs = tokenizer.encode_plus(
            text,
            max_length=max_length,
            truncation=True,
            return_tensors=&quot;pt&quot;,
            padding=&quot;max_length&quot;,
            return_attention_mask=True,
            return_tensors=&quot;pt&quot;,
        )
        return {
            &quot;input_ids&quot;: inputs[&quot;input_ids&quot;].flatten(),
            &quot;attention_mask&quot;: inputs[&quot;attention_mask&quot;].flatten(),
        }

    def __len__(self):
        return len(self.texts)

# Create a data loader
dataset = Dataset(tokenizer, text_file)
data_loader = torch.utils.data.DataLoader(dataset, batch_size=batch_size, shuffle=True)

# Define the custom model and optimizer
class CustomModel(torch.nn.Module):
    def __init__(self):
        super().__init__()
        self.model = AutoModelForCausalLM.from_pretrained(model_name)
        for name, param in self.model.named_parameters():
            if &quot;lora&quot; not in name:
                continue
            print(f&quot;{name} is already being overridden by a custom layer&quot;)
        self.lora_linear = torch.nn.Linear(512, 2048)  # Add your custom linear layer here

    def forward(self, input_ids, attention_mask):
        outputs = self.model(input_ids, attention_mask=attention_mask)
        output = outputs.last_hidden_state
        return self.lora_linear(output)

class CustomOptimizer(torch.optim.Adam):
    def __init__(self, params, lr, lora_rank):
        super().__init__(params, lr=lr)
        for param in self.param_groups:
            param[&quot;lora_rank&quot;] = lora_rank

# Define the training function
def train(model, device, data_loader, optimizer, criterion, epoch):
    model.train()
    total_loss = 0
    for batch in data_loader:
        input_ids = batch[&quot;input_ids&quot;].to(device)
        attention_mask = batch[&quot;attention_mask&quot;].to(device)
        optimizer.zero_grad()
        outputs = model(input_ids, attention_mask)
        loss = criterion(outputs, output_ids, attention_mask)
        loss.backward()
        optimizer.step()
        total_loss += loss.item()
    print(f&quot;Epoch {epoch}, Loss: {total_loss / len(data_loader)}&quot;)

# Define the evaluation function
def evaluate(model, device, data_loader):
    model.eval()
    total_correct = 0
    with torch.no_grad():
        for batch in data_loader:
            input_ids = batch[&quot;input_ids&quot;].to(device)
            attention_mask = batch[&quot;attention_mask&quot;].to(device)
            outputs = model(input_ids, attention_mask)
            _, predicted = torch.max(outputs.scores, dim=1)
            total_correct += (predicted == batch[&quot;labels&quot;]).sum().item()
    accuracy = total_correct / len(data_loader.dataset)
    return accuracy

# Train the custom model
device = torch.device(&quot;cuda&quot; if torch.cuda.is_available() else &quot;cpu&quot;)
model.to(device)
optimizer = CustomOptimizer(model.parameters(), lr=1e-5, lora_rank=8)
criterion = torch.nn.CrossEntropyLoss()

for epoch in range(10):
    train(model, device, data_loader, optimizer, criterion, epoch)
    accuracy = evaluate(model, device, data_loader)
    print(f&quot;Epoch {epoch}, Accuracy: {accuracy:.4f}&quot;)

# Use the custom model for inference
input_ids = tokenizer.encode(&quot;Hello, how are you?&quot;, return_tensors=&quot;pt&quot;)
attention_mask = torch.ones(input_ids.shape[0], input_ids.shape[1]).to(device)
outputs = model(input_ids, attention_mask)
print(outputs.last_hidden_state)
```

This code assumes that the pre-trained model and tokenizer are installed and available. It defines a custom dataset class to load the data from disk, a custom model that overrides the last hidden state with a custom linear layer, and a custom optimizer that modifies the learning rate based on the LORA rank. The training function trains the custom model using the Adam optimizer and cross-entropy loss criterion. The evaluation function evaluates the accuracy of the custom model.</code></pre><p>Of course this is just a simple answer, but if we expand the code and give it an environment similar to Github Copilot or Cursor, we can expand its capability to even edit code or debug.</p><p>The full version of the code can be checked out <a href="https://github.com/tamdogood/llama" rel="nofollow ugc noopener">here</a>.</p><p>As for the next blog, we will continue our journey with llama-stack and expand it usage beyond a simple answering agent.</p>]]></content:encoded></item><item><title><![CDATA[why your dream dies at 25?]]></title><description><![CDATA[<p>Everyone&apos;s dreams start to wither by the age of 25. Ambition fades and be replaced by exhaustion. Someone said it&apos;s just you adapting to the reality that you are perceiving. When you&#x2019;re young, you believe in the goodness of people and the idea that</p>]]></description><link>https://tamnguyen.io/why-your-dream-dies-at-25/</link><guid isPermaLink="false">678b21ed5a92ba03cc46c9aa</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sat, 18 Jan 2025 03:38:30 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1495427513693-3f40da04b3fd?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGJ1cm5vdXR8ZW58MHx8fHwxNzM3MTcxNDkxfDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1495427513693-3f40da04b3fd?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDd8fGJ1cm5vdXR8ZW58MHx8fHwxNzM3MTcxNDkxfDA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="why your dream dies at 25?"><p>Everyone&apos;s dreams start to wither by the age of 25. Ambition fades and be replaced by exhaustion. Someone said it&apos;s just you adapting to the reality that you are perceiving. When you&#x2019;re young, you believe in the goodness of people and the idea that anything is possible. But this optimism often becomes a breeding ground for false hope and naive idealism.<br>After a considerate amount of suffering and harshness, you start to feel numb. Every shred of optimism will get chipped away from you, little by little.<br>With time and age, you learn:</p><ul><li>Shit happens. Good shit and bad shit that are out of your control will happen at some point. Things won&apos;t go your way. You&#x2019;ll get knocked down repeatedly, and eventually, you&#x2019;ll realize how incredibly difficult it is to achieve your dreams. Luck plays a huge role. Sure, luck comes in many forms, but you still need <em>a lot</em> of it&#x2014;like being in the right place at the right time (e.g., joining Meta early). You can&#x2019;t wish affluence into existence. <strong>Your hard work does not guarantee success.</strong></li><li>For every dream that you dream of, there are thousands of other young, ambitious and naive guys like you also compete for. As insecure as ever, I once took an online IQ test (silly me). Not sure how much trustworthy it was, but it said I ranked in the top 19% of world population. For a brief moment, I felt validated&#x2014;until I realized that 19% of the world is still <em>hundreds of millions of people</em> above me.</li><li>Your body is far from a well-designed invincible machine. No matter how determined you are, you&#x2019;re not immune to burnout. After a year or two of relentless effort, you&#x2019;ll start to feel the strain. Your body will remind you it has limits. You&apos;d rather lying on your bed for some days.</li></ul><p>The list goes on, but I think you get the idea. Life sufferings will tear you down and teach you that our dreams, though still feasible, but it won&apos;t be on the scale that you once imagined.</p><p>But keep going, you will get there, wherever you want to go eventually. <strong>Just like Google Maps always adapts your route to your destination if you missed a turn, but it never changes your destination. And just like that, you are never off-track</strong>. Be like Google Maps</p>]]></content:encoded></item><item><title><![CDATA[random wisdom pt.1]]></title><description><![CDATA[<ul><li>The best save to earn $1 is to save $1</li><li>When reading a long form essay, save it as pdf since you can keep track of the pages and pick up again</li><li>Seek advice not feedback</li><li>If we don&apos;t live in the moment, we not never be living</li></ul>]]></description><link>https://tamnguyen.io/random-wisdom/</link><guid isPermaLink="false">6782c50b5a92ba03cc46c9a2</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sat, 11 Jan 2025 19:23:19 GMT</pubDate><content:encoded><![CDATA[<ul><li>The best save to earn $1 is to save $1</li><li>When reading a long form essay, save it as pdf since you can keep track of the pages and pick up again</li><li>Seek advice not feedback</li><li>If we don&apos;t live in the moment, we not never be living at all</li><li>Simplest explanation usually the right one</li><li>There people in control and people that listen</li><li>You remember what you experience, not what you own</li><li>Small encouragements can do help others greatly</li><li>Start your planning with the end result</li><li>Incentive is everything</li><li>Don&apos;t wish to read 500 books, wish you can reread your top 100 for the rest of your life</li><li>When your brain is asleep, walk away rather than being brain-dead at your desk</li><li>Nobody is dump, they are just as smart as their information</li><li>Intelligence is compression of information</li><li>If you are feeling comfortable, you are doing it wrong</li></ul>]]></content:encoded></item><item><title><![CDATA[40 questions to ask yourself each year]]></title><description><![CDATA[<p><a href="https://github.com/kepano/40-questions#40-questions-to-ask-yourself-each-year">kepano&apos;s original</a></p><ol><li>What did you do this year that you&#x2019;d never done before?</li><li>Did you keep your new year&#x2019;s resolutions?</li><li>Did anyone close to you give birth?</li><li>Did anyone close to you die?</li><li>What cities/states/countries did you visit?</li><li>What would you like</li></ol>]]></description><link>https://tamnguyen.io/yearly-40/</link><guid isPermaLink="false">6768bc1a5a92ba03cc46c995</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Mon, 23 Dec 2024 01:26:25 GMT</pubDate><content:encoded><![CDATA[<p><a href="https://github.com/kepano/40-questions#40-questions-to-ask-yourself-each-year">kepano&apos;s original</a></p><ol><li>What did you do this year that you&#x2019;d never done before?</li><li>Did you keep your new year&#x2019;s resolutions?</li><li>Did anyone close to you give birth?</li><li>Did anyone close to you die?</li><li>What cities/states/countries did you visit?</li><li>What would you like to have next year that you lacked this year?</li><li>What date(s) from this year will remain etched upon your memory, and why?</li><li>What was your biggest achievement of the year?</li><li>What was your biggest failure?</li><li>What other hardships did you face?</li><li>Did you suffer illness or injury?</li><li>What was the best thing you bought?</li><li>Whose behavior merited celebration?</li><li>Whose behavior made you appalled?</li><li>Where did most of your money go?</li><li>What did you get really, really, really excited about?</li><li>What song will always remind you of this year?</li><li>Compared to this time last year, are you: happier or sadder? Thinner or fatter? Richer or poorer?</li><li>What do you wish you&#x2019;d done more of?</li><li>What do you wish you&#x2019;d done less of?</li><li>How are you spending the holidays?</li><li>Did you fall in love this year?</li><li>Do you hate anyone now that you didn&#x2019;t hate this time last year?</li><li>What was your favorite show?</li><li>What was the best book you read?</li><li>What was your greatest musical discovery of the year?</li><li>What was your favorite film?</li><li>What was your favorite meal?</li><li>What did you want and get?</li><li>What did you want and not get?</li><li>What did you do on your birthday?</li><li>What one thing would have made your year immeasurably more satisfying?</li><li>How would you describe your personal fashion this year?</li><li>What kept you sane?</li><li>Which celebrity/public figure did you admire the most?</li><li>What political issue stirred you the most?</li><li>Who did you miss?</li><li>Who was the best new person you met?</li><li>What valuable life lesson did you learn this year?</li><li>What is a quote that sums up your year?</li></ol>]]></content:encoded></item><item><title><![CDATA[a look at synthetic data's future]]></title><description><![CDATA[<p>The world of machine learning is hungry. It gobbles up data like a starving gremlin, demanding more and more to fuel its algorithms and produce insightful results. This hunger has led to a growing concern: <strong>are we approaching a data exhaustion crisis?</strong></p><p>The answer, fellow data geeks, might lie in</p>]]></description><link>https://tamnguyen.io/synthetic-data/</link><guid isPermaLink="false">671eae215a92ba03cc46c976</guid><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sun, 27 Oct 2024 21:21:21 GMT</pubDate><content:encoded><![CDATA[<p>The world of machine learning is hungry. It gobbles up data like a starving gremlin, demanding more and more to fuel its algorithms and produce insightful results. This hunger has led to a growing concern: <strong>are we approaching a data exhaustion crisis?</strong></p><p>The answer, fellow data geeks, might lie in something almost magical: <strong>synthetic data.</strong></p><p>Imagine training machines on datasets that never existed in the real world, datasets born from the minds of algorithms themselves. That&#x2019;s the promise of synthetic data, and it&#x2019;s poised to revolutionize the way we train machines in the future.</p><h3 id="why-synthetic-data-matters">Why Synthetic Data Matters</h3><p><a href="https://arxiv.org/pdf/2410.12896">This paper</a> highlight a critical problem: the amount of high-quality data we need for training is increasing exponentially, driven by the growth in model size and complexity. &#xA0;At the same time, the rate at which we generate this high-quality data is lagging far behind. &#xA0;This creates a bottleneck, limiting the growth and potential of machine learning.</p><p><strong>Synthetic data offers an elegant solution.</strong> Instead of painstakingly collecting and labeling real-world data, we can use algorithms to generate data that mimics the properties and patterns of real data. This opens up exciting possibilities:</p><ul><li><strong>Unlimited Data:</strong> &#xA0;We can create massive datasets, tailored to our specific needs, without worrying about data scarcity. This is particularly beneficial for specialized domains where real-world data is scarce or expensive to collect.</li><li><strong>Privacy Protection:</strong> Synthetic data can be used to protect sensitive information. By generating data that reflects the statistical properties of the real data without containing any actual personal information, we can train models without risking privacy breaches.</li><li><strong>Control and Bias Mitigation:</strong> &#xA0;We can finely control the properties of synthetic data, ensuring diversity and reducing biases that may be present in real-world datasets.</li></ul><p></p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="http://tamnguyen.io/content/images/2024/10/image.png" class="kg-image" alt loading="lazy" width="900" height="627" srcset="http://tamnguyen.io/content/images/size/w600/2024/10/image.png 600w, http://tamnguyen.io/content/images/2024/10/image.png 900w" sizes="(min-width: 720px) 720px"><figcaption>Illustration of the evolutionary steps in the development of data synthesis and augmentation techniques for LLMs.</figcaption></figure><h3 id="how-synthetic-data-works-its-magic">How Synthetic Data Works Its Magic</h3><p><a href="https://arxiv.org/pdf/2410.12896">The paper</a> outline two primary approaches to synthetic data generation:</p><p><strong>Data Augmentation:</strong> This involves manipulating existing data to create variations, essentially stretching and reshaping the data we already have. This could involve simple transformations like rotating images, or more sophisticated techniques like using LLMs to rephrase text or translate it into different languages.</p><p><strong>Data Synthesis:</strong> &#xA0;This involves creating entirely new data points from scratch, often using generative models. &#xA0;The exciting part here is that we can use LLMs themselves to generate the data. &#xA0;Imagine training a smaller language model on data synthesized by a more powerful model like GPT-4. &#xA0;This process, known as <strong>model distillation</strong>, is already showing promising results.</p><h3 id="synthetic-datas-impact-on-the-machine-learning-lifecycle">Synthetic Data&apos;s Impact on the Machine Learning Lifecycle</h3><p>The research paint a picture of how synthetic data can be integrated into different stages of the machine learning lifecycle:</p><p><strong>Data Preparation:</strong> &#xA0;This is where synthetic data can really shine, allowing us to generate massive, diverse datasets for training, reducing reliance on expensive and time-consuming data collection.</p><p><strong>Pre-training:</strong> &#xA0;Synthetic data can be used to pre-train large language models on a massive scale, providing a foundation for a wide range of downstream tasks.</p><p><strong>Fine-tuning:</strong> &#xA0;Synthetic data can be used to fine-tune models for specific tasks, improving performance in areas where real-world data is limited.</p><p><strong>Instruction-tuning:</strong> &#xA0;Synthetic data can be used to train models to follow instructions, making them more versatile and adaptable.</p><p><strong>Preference Alignment:</strong> Synthetic data can be used to align models with human preferences, ensuring that they generate outputs that are safe, reliable, and aligned with our values.</p><h3 id="the-challenges-ahead">The Challenges Ahead</h3><p>While synthetic data holds immense promise, there are challenges to overcome:</p><p><strong>Data Quality:</strong> Ensuring the quality, diversity, and reliability of synthetic data is crucial. Synthetic data needs to accurately reflect the nuances and complexities of real-world data to be truly effective.</p><p><strong>Evaluation:</strong> We need robust metrics to evaluate the quality of synthetic data and the performance of models trained on this data. Traditional benchmarks may not be sufficient to capture the unique characteristics of synthetic data.</p><p><strong>Ethical Concerns:</strong> The use of synthetic data raises ethical questions about privacy, bias, and the potential for misuse. Clear guidelines and responsible practices are needed to ensure that synthetic data is used ethically and responsibly.</p><h3 id="a-peek-into-the-future">A Peek into the Future</h3><p>Into the future of synthetic data:</p><p><strong>Multi-modal Synthesis:</strong> Generating data that spans multiple modalities (text, images, audio, etc.) will enable more comprehensive and realistic training scenarios. &#xA0;Imagine training a machine learning model on a synthetic dataset that includes images, captions, and even audio descriptions &#x2013; the possibilities are endless!</p><p><strong>Real-time Synthesis:</strong> Dynamically generating synthetic data in real time will open doors for interactive applications that can adapt and learn on the fly.</p><p><strong>Domain-specific Synthesis:</strong> Tailoring synthetic data to specific domains will be crucial for addressing the unique challenges and opportunities of different fields.</p><h3 id="conclusion">Conclusion</h3><p>Synthetic data is a powerful tool that has the potential to unlock new levels of innovation in machine learning. By embracing the creative potential of synthetic data, we can push the boundaries of what&apos;s possible, training machines on datasets that exist only in the digital realm. &#xA0;As we venture into this uncharted territory, let&apos;s remember to tread carefully, addressing ethical concerns and ensuring the quality and reliability of the data we create. &#xA0;The future of machine learning might be built on dreams, but those dreams need a solid foundation of responsible and innovative practices.</p><p>Source: <a href="https://arxiv.org/pdf/2410.12896">https://arxiv.org/pdf/2410.12896</a></p>]]></content:encoded></item><item><title><![CDATA[confidence isn't built, it must be earned]]></title><description><![CDATA[<p>&#x201C;Build your confidence!&#x201D; It&#x2019;s a phrase we hear often, but is it really that simple? The idea that confidence is something you can just summon from thin air is misleading. Confidence isn&#x2019;t built; it&#x2019;s earned, and often through a combination of hard</p>]]></description><link>https://tamnguyen.io/confidence/</link><guid isPermaLink="false">670c569d5a92ba03cc46c96a</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sun, 13 Oct 2024 23:25:26 GMT</pubDate><content:encoded><![CDATA[<p>&#x201C;Build your confidence!&#x201D; It&#x2019;s a phrase we hear often, but is it really that simple? The idea that confidence is something you can just summon from thin air is misleading. Confidence isn&#x2019;t built; it&#x2019;s earned, and often through a combination of hard work, perseverance, and small victories that create a solid track record. I can tell you this because for most of my early life, confidence was something I lacked.</p><p>Growing up, I faced my share of adversity. It seemed like I was always on the back foot, never quite excelling at anything. Even in soccer, a sport I dedicated 12 years to, playing week after week, I struggled to find success. That lack of achievement carried over into other parts of my life, eroding my self-esteem. My childhood wasn&#x2019;t filled with the typical wins or affirmations that help build a foundation of confidence. By the time I joined Meta, my imposter syndrome was in full swing.</p><p>Starting at Meta was both exhilarating and terrifying. I had never worked at any company before, let alone at one as massive and high-stakes as Meta. The imposter syndrome was overwhelming. Every day, I felt like I didn&#x2019;t belong. I kept thinking, &#x201C;What if they realize I&#x2019;m not good enough?&#x201D; I&#x2019;d never experienced that kind of professional environment, and my internal dialogue was full of doubts. The fear of underperformance weighed heavily on me, leading me to work long hours. I even pulled an all-nighter once&#x2014;not because anyone asked me to, but because I felt I needed to prove my worth. I hoped that by putting in more time and effort, I&#x2019;d convince both my team and myself that I was hardworking and capable.</p><p>Despite the self-imposed pressure, I was fortunate enough to work with an incredibly supportive team. My managers were patient with me, especially during one-on-one meetings where I frequently sought feedback. Their tolerance and guidance helped me inch forward, even when I felt like I was falling behind.</p><p>Then came the breakthrough. A year into my role, I received an &#x201C;Exceed&#x201D; rating in my performance review&#x2014;something I hadn&#x2019;t expected. That moment was pivotal for me. It was the validation I&#x2019;d been craving, a tangible sign that I was doing well, even if I hadn&#x2019;t realized it. With that rating, the imposter syndrome began to lose its grip. Project by project, my confidence started to build. I began to trust myself more and second-guess myself less. Slowly, I found myself becoming more proactive, taking ownership of responsibilities without hesitation. The imposter that once dictated my every thought shrank, and eventually, it felt like it had disappeared.</p><p>But my story isn&#x2019;t unique. I&#x2019;m not an outlier. During my time at Meta, I had the opportunity to talk with senior engineers&#x2014;people with a decade of experience under their belts&#x2014;and many of them admitted to feeling imposter syndrome when they first joined. Even seasoned professionals were susceptible to that nagging doubt. It was both comforting and eye-opening to realize that this feeling was more common than I thought.</p><p>Later, I was fortunate enough to onboard many new hires. If there&#x2019;s one quality I would instill in every newcomer, it would be confidence. In an environment as fast-paced and demanding as Meta, confidence can be the difference between merely surviving and truly thriving. New hires often struggle to keep up with the pace and expectations, and it&#x2019;s easy to doubt yourself in those early stages. But I learned that with time, perseverance, and a few small victories, confidence will follow.</p><p>For anyone dealing with imposter syndrome, know this: confidence isn&#x2019;t a starting point; it&#x2019;s a destination. It&#x2019;s something you earn through hard work, through your achievements, and even your failures. The key is to keep moving forward, one project at a time, and before long, you&#x2019;ll notice the shift. You won&#x2019;t just be going through the motions&#x2014;you&#x2019;ll be owning them.</p><p>So, no, confidence isn&#x2019;t something you just &#x201C;build&#x201D; overnight. It&#x2019;s something you earn. And if I could go back and tell my younger self one thing, it would be this: Keep pushing. The confidence will come.</p>]]></content:encoded></item><item><title><![CDATA[the Dixon-Coles model: outsmarting the bookies (maybe?)]]></title><description><![CDATA[<p>The Dixon-Coles model reigns supreme in the realm of football prediction models. While the independent Poisson model serves as a decent foundation, Dixon and Coles, in their seminal 1997 paper, &#xA0;proposed key refinements to address its inherent shortcomings.</p><h3 id="the-draw-conundrum-unveiling-the-bivariate-adjustment">The Draw Conundrum: Unveiling the Bivariate Adjustment</h3><p>One notable weakness of</p>]]></description><link>https://tamnguyen.io/dixon-coles/</link><guid isPermaLink="false">67086c7a5a92ba03cc46c929</guid><category><![CDATA[sport]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Fri, 11 Oct 2024 00:15:03 GMT</pubDate><content:encoded><![CDATA[<p>The Dixon-Coles model reigns supreme in the realm of football prediction models. While the independent Poisson model serves as a decent foundation, Dixon and Coles, in their seminal 1997 paper, &#xA0;proposed key refinements to address its inherent shortcomings.</p><h3 id="the-draw-conundrum-unveiling-the-bivariate-adjustment">The Draw Conundrum: Unveiling the Bivariate Adjustment</h3><p>One notable weakness of the independent Poisson model lies in its tendency to underestimate the frequency of low-scoring matches, especially draws. This is where the Dixon-Coles model steps in, introducing a <strong>bivariate adjustment</strong> to correct this bias. The secret sauce is a parameter denoted as <strong>rho (&#x3C1;)</strong>, which dictates the degree of correlation between the probabilities of low-scoring outcomes.</p><p><strong>Think of it this way:</strong></p><ul><li><strong>Positive &#x3C1;:</strong> Suggests a tendency for matches to result in either high-scoring affairs for both teams or low-scoring encounters for both, implying a positive correlation between the number of goals scored by each team.</li><li><strong>Negative &#x3C1;:</strong> &#xA0;Indicates an inclination towards matches where one team scores high while the other scores low, suggesting a negative correlation.</li></ul><p>Dixon and Coles, in their <a href="https://www.ajbuckeconbikesail.net/wkpapers/Airports/MVPoisson/soccer_betting.pdf">analysis of English football data</a>, discovered a negative &#x3C1; value, implying a higher frequency of matches with one-sided scorelines compared to what the independent Poisson model would predict.</p><p>The adjustment operates by modifying the probabilities of the four low-scoring scorelines: 0-0, 1-0, 0-1, and 1-1. &#xA0;The extent of this modification hinges on the value of &#x3C1;. When &#x3C1; is zero, the Dixon-Coles model simplifies to the independent Poisson model, effectively nullifying the adjustment.</p><p><strong>Implementation in Code:</strong></p><p>The Python code snippet below demonstrates the implementation of the &#x3C1; correction.</p><pre><code class="language-python">def rho_correction(x, y, lambda_x, mu_y, rho):
    if x == 0 and y == 0:
        return 1 - (lambda_x * mu_y * rho)
    elif x == 0 and y == 1:
        return 1 + (lambda_x * rho)
    elif x == 1 and y == 0:
        return 1 + (mu_y * rho)
    elif x == 1 and y == 1:
        return 1 - rho
    else:
        return 1.0
</code></pre><p>In this code, &apos;x&apos; and &apos;y&apos; represent the number of goals scored by the home and away teams, respectively. &apos;lambda_x&apos; and &apos;mu_y&apos; are the expected goals for the home and away teams, calculated based on their attack and defense strengths and the home advantage factor.</p><h3 id="the-time-factor-weighing-recent-matches-more-heavily">The Time Factor: Weighing Recent Matches More Heavily</h3><p>Recognizing that team performance is not static but evolves over time, the Dixon-Coles model incorporates a <strong>time decay component</strong>. This essentially means giving more weight to recent matches when calculating a team&apos;s average goalscoring rate. The rationale is that a team&apos;s current form is a more reliable indicator of their future performance than their performance from several months ago.</p><p>The weighting function typically used is a <strong>negative exponential function</strong>, controlled by a parameter <strong>xi (&#x3BE;)</strong>. A higher &#x3BE; value leads to a steeper decline in the weight assigned to older matches, effectively making the model more responsive to recent form.</p><p><strong>Expressing the Time Decay Model Mathematically:</strong></p><pre><code>L(&#x3B1;, &#x3B2;, &#x3C1;, &#x3B3;; t) = &#x3A0;_{k&#x2208;K_t} &#x3C4;(x_k, y_k, &#x3C1;) exp(-&#x3BB;_k) &#x3BB;_k^(x_k) / x_k! * exp(-&#x3BC;_k) &#x3BC;_k^(y_k) / y_k! * &#x3C6;(t - t_k)
</code></pre><p>In this equation, &#xA0;<code>t</code> denotes the time at which we are making predictions, <code>K_t</code> represents the set of matches played before time <code>t</code>, and <code>&#x3C6;</code> is the weighting function. The other parameters remain the same as in the standard Dixon-Coles model.</p><p><strong>Determining the Optimal &#x3BE;:</strong></p><p>Finding the best value for &#x3BE; requires a bit of experimentation. One common approach is to test various &#x3BE; values and evaluate the model&apos;s predictive accuracy using metrics like the <strong>predicted profile log-likelihood</strong> or <strong>Ranked Probability Scores</strong>. The &#x3BE; value that yields the highest predictive accuracy is deemed optimal.</p><h3 id="practical-implementations-and-limitations">Practical Implementations and Limitations</h3><p>This <a href="https://opisthokonta.net/?cat=48">blog</a> offers detailed R code examples, while the <code><a href="https://dashee87.github.io/football/python/predicting-football-results-with-statistical-modelling-dixon-coles-and-time-weighting/"><a href="https://github.com/Torvaney/regista">regista</a></a></code> provides a convenient way to get started with predictions using the model in R.</p><p>However, despite its advancements, the Dixon-Coles model does have limitations. One key point is that it relies on the Poisson distribution to model goal scoring, which might not always accurately capture the complexities of real-world football matches. Additionally, the model assumes that a team&apos;s attack and defense strengths remain constant throughout a season, which might not hold true in practice.</p><h3 id="conclusion-a-powerful-tool-but-not-a-crystal-ball">Conclusion: A Powerful Tool, but Not a Crystal Ball</h3><p>The Dixon-Coles model stands as a powerful tool for predicting football match outcomes. Its bivariate adjustment and time decay component address key weaknesses of the independent Poisson model, leading to more accurate predictions.</p><p>However, it&apos;s important to remember that it&apos;s still a statistical model based on assumptions that might not always perfectly reflect reality. As such, while it can provide valuable insights and inform predictions, it&apos;s not a foolproof system for guaranteed betting success.</p><p></p><p>Source: <a href="https://www.ajbuckeconbikesail.net/wkpapers/Airports/MVPoisson/soccer_betting.pdf">https://www.ajbuckeconbikesail.net/wkpapers/Airports/MVPoisson/soccer_betting.pdf</a></p>]]></content:encoded></item><item><title><![CDATA[Bitcoin's power law]]></title><description><![CDATA[<p>Today, we&apos;re strapping on our metaphorical lab coats and venturing into the fascinating, and often heated, debate surrounding the <strong>Bitcoin Power Law Theory</strong>. Buckle up, because we&apos;re about to explore a model that claims to unveil the secrets behind Bitcoin&apos;s price movements, including those</p>]]></description><link>https://tamnguyen.io/power-law/</link><guid isPermaLink="false">6707ce285a92ba03cc46c8f5</guid><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Thu, 10 Oct 2024 12:59:06 GMT</pubDate><content:encoded><![CDATA[<p>Today, we&apos;re strapping on our metaphorical lab coats and venturing into the fascinating, and often heated, debate surrounding the <strong>Bitcoin Power Law Theory</strong>. Buckle up, because we&apos;re about to explore a model that claims to unveil the secrets behind Bitcoin&apos;s price movements, including those exhilarating, and sometimes nerve-wracking, bubbles.</p><p>The Bitcoin Power Law Theory, championed by physicist Giovanni Santostasi, draws inspiration from the world of physics, where power laws elegantly describe a wide array of natural phenomena. Think of the distribution of wealth (the Pareto Principle) or the awe-inspiring forces unleashed during earthquakes. Santostasi argues that Bitcoin, despite being a digital creation, behaves like a physical system governed by these very laws.</p><p><strong>But how can a bunch of 1s and 0s behave like a raging tornado?</strong> Well, PLT supporters point to the inherent limitations of the system, such as the number of interactions humans can have and the amount of information they can transmit, arguing that these constraints make Bitcoin behave predictably, like a physical system. They also highlight key Bitcoin features, like the difficulty adjustment algorithm and the energy-hungry demands of miners, as evidence of a system grounded in the laws of physics.</p><p>Now, let&apos;s get to the juicy part: <strong>predictability</strong>. The PLT asserts that Bitcoin&apos;s price follows a predetermined path dictated by a power law relationship, observable by plotting its historical price data on a logarithmic scale. This model, they say, accurately explains the long-term upward trend of Bitcoin&apos;s price, even accounting for those wild price swings we lovingly (or fearfully) call bubbles.</p><p><strong>Hold on, are you telling me those nail-biting bubbles are part of the plan?</strong> According to Santostasi, absolutely! He argues that these bubbles aren&apos;t just random market whims but are, in fact, an integral part of Bitcoin&apos;s growth story. He links these cycles to <strong>Moore&apos;s Law</strong>, the tech world&apos;s golden rule that states computing power doubles approximately every two years.</p><p>Think about it: miners constantly upgrade their hardware to keep up with the ever-increasing hashrate, driven by the promise of greater rewards. But Bitcoin, in its ingenious design, counteracts this with its difficulty adjustment mechanism, ensuring a steady rate of block production. This creates a fascinating push and pull dynamic, keeping miners on their toes and preventing them from gaining an unfair advantage.</p><p>Here&apos;s how Moore&apos;s Law contributes to Bitcoin bubbles according to Santostasi&apos;s theory:</p><ul><li><strong>Increased Hashrate, Diminishing Returns:</strong> As miners upgrade their hardware, the network&apos;s hashrate increases, leading to faster block mining times4. However, Bitcoin&apos;s <strong>difficulty adjustment mechanism</strong> counteracts this by increasing the difficulty of mining, ensuring blocks are mined at a relatively consistent rate. This means miners need to invest even more in hardware to maintain profitability, creating an arms race for computing power.</li><li><strong>Price-Hashrate Relationship:</strong> Santostasi argues that the price of Bitcoin is proportional to the square root of the hashrate (Price = hashrate^1/2). While an increase in hashrate can lead to higher mining rewards, the halving events, which occur approximately every four years, cut these rewards in half, effectively negating the benefits of increased computing power. This mechanism keeps miners on the edge of profitability, preventing them from gaining an excessive advantage from Moore&apos;s Law.</li></ul><p>Now, where does the bubble fit into all of this? As security increases with the growing hashrate, more users are attracted to Bitcoin, boosting adoption rates and, you guessed it, driving up the price. &#xA0;This creates a self-reinforcing cycle of security, adoption, and price increases.</p><p><strong>But what goes up must come down, right?</strong> &#xA0;Absolutely. &#xA0;Eventually, the price surge becomes unsustainable, leading to a correction, or what we know as a bubble burst. This is seen as a necessary reset, a &quot;punctuated evolution&quot; that allows the market to regain its balance. And then, the cycle repeats, with a new wave of adoption and technological advancements pushing Bitcoin towards new heights.</p><p><strong>So, is the Bitcoin Power Law Theory the crystal ball we&apos;ve been waiting for?</strong> &#xA0;Not so fast! While the PLT offers a compelling narrative, it&apos;s crucial to acknowledge the criticisms raised by skeptics like Adrian Morris. They argue that the model oversimplifies Bitcoin&apos;s reality, neglecting the complexities of human behavior and market dynamics. They also question the model&apos;s predictive power, pointing to its wide range of predictions, which can sometimes span from a modest $200,000 to a mind-boggling $10 million.</p><p>Furthermore, critics emphasize that Bitcoin is not just a physical system; it&apos;s a complex socio-technological ecosystem, heavily influenced by factors beyond the realm of physics. They argue that aspects like market sentiment, regulatory changes, and even the emergence of new technologies can significantly impact Bitcoin&apos;s price trajectory, elements not fully accounted for in the PLT.</p><p><strong>So, where does this leave us, fellow data detectives?</strong> &#xA0;The Bitcoin Power Law Theory, while fascinating, is far from a settled science. It provides a thought-provoking lens through which to view Bitcoin&apos;s price movements but should be approached with a healthy dose of skepticism and further research.</p><p>Whether Bitcoin&apos;s future unfolds according to a predetermined mathematical script or is shaped by the unpredictable dance of human behavior and market forces, one thing remains certain: this digital frontier will continue to captivate our imaginations and challenge our understanding of finance and technology. So, stay curious, keep exploring, and always remember to <strong>DYOR</strong> (Do Your Own Research)!</p>]]></content:encoded></item><item><title><![CDATA[quantization, LoRA, and the quest for the ultimate Tiny AI!]]></title><description><![CDATA[<p>Buckle up, fellow AI enthusiasts, as we embark on a geeky exploration of <strong>model compression</strong> &#x2014; the magical realm where we try to cram those monstrously large AI models into smaller spaces, ideally without sacrificing their smarts!</p><h3 id="quantization-the-art-of-rounding-for-fun-and-profit">Quantization: &#xA0;The Art of Rounding for Fun and Profit!</h3><p>Imagine yourself staring</p>]]></description><link>https://tamnguyen.io/quantization/</link><guid isPermaLink="false">66ff895b5a92ba03cc46c8cb</guid><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Fri, 04 Oct 2024 06:22:52 GMT</pubDate><content:encoded><![CDATA[<p>Buckle up, fellow AI enthusiasts, as we embark on a geeky exploration of <strong>model compression</strong> &#x2014; the magical realm where we try to cram those monstrously large AI models into smaller spaces, ideally without sacrificing their smarts!</p><h3 id="quantization-the-art-of-rounding-for-fun-and-profit">Quantization: &#xA0;The Art of Rounding for Fun and Profit!</h3><p>Imagine yourself staring at a clock ticking away those precious seconds. &#xA0;10:21:15.32. &#xA0;But let&apos;s be honest, who really needs that level of precision? &#xA0;Most of the time, we&apos;re perfectly happy rounding it off to a more manageable 10:21.</p><p>That, my friends, is the essence of <strong>quantization</strong> in the AI world! &#xA0;Just like we simplify time, we can <strong>simplify the humongous floating-point numbers representing weights and activations in a neural network</strong>. &#xA0;Instead of using 32 bits of precision (or even 16), we can often get away with a measly 8 bits, or even fewer, <strong>representing those numbers as integers</strong>. &#xA0;This might sound like a trivial change, but it unlocks a treasure trove of benefits:</p><ul><li><strong>Model Size Shrinks Dramatically:</strong> &#xA0;Remember that massive language model that could only run on a server farm? &#xA0;Well, with quantization, we might just be able to squeeze it onto your phone!</li><li><strong>Inference Speed Goes Zoom:</strong> &#xA0;Integer operations are generally much faster than floating-point operations, especially on specialized AI chips found in mobile devices. &#xA0;This means your AI-powered apps will feel snappier and more responsive.</li><li><strong>Memory Footprint Gets Trimmed Down:</strong> This is a lifesaver for running AI models on devices with limited RAM, like those tiny but mighty microcontrollers powering the Internet of Things.</li></ul><p>But as with any good magic trick, there&apos;s a slight catch... <strong>Quantization can sometimes lead to a bit of accuracy loss.</strong> &#xA0;Think of it as the price we pay for that sweet, sweet compression. &#xA0;The name of the game is to <strong>find the perfect balance between shrinking the model and preserving its intelligence</strong>.</p><p><strong>Let&apos;s meet the two main contenders in the quantization arena:</strong></p><ol><li><strong>Post-Training Quantization (PTQ):</strong> &#xA0;As the name suggests, PTQ is all about quantizing a model <em>after</em> it&apos;s been trained. &#xA0;It&apos;s like giving your already-smart AI a quick makeover to make it more compact. &#xA0;PTQ is generally <strong>faster and easier to implement</strong>, but it might not always give you the best accuracy, especially if you&apos;re aiming for extreme compression levels.</li><li><strong>Quantization-Aware Training (QAT):</strong> &#xA0;If PTQ is a post-training makeover, then QAT is like sending your AI to a special training camp where it learns to be both smart and compact from the get-go. &#xA0;During QAT, the model is trained with the knowledge that it will be quantized, allowing it to adapt its weights and activations accordingly. &#xA0;This typically leads to <strong>better accuracy</strong> compared to PTQ, but it also requires more time and computational resources for training.</li></ol><p><strong>And because we&apos;re all about squeezing out every last drop of performance, here are some nifty techniques researchers have come up with to boost quantization accuracy:</strong></p><ul><li><strong>NormalFloat (NF) Quantization:</strong> &#xA0;Instead of blindly using standard integers or floats for quantization, NF quantization uses a <strong>special data type tailor-made for the kind of data we often encounter in neural networks&#x2014;normally distributed data!</strong> &#xA0;This clever trick can lead to significant accuracy gains, especially when working with very low bit-widths. &#xA0;Think of it as giving your quantization algorithm an insider&apos;s advantage!</li><li><strong>Double Quantization:</strong> &#xA0;Why stop at quantizing the model&apos;s weights? &#xA0;Let&apos;s get meta and <strong>quantize those quantization constants themselves!</strong> &#xA0;This mind-bending technique, also known as &quot;quantization of quantization,&quot; can squeeze out even more efficiency gains without sacrificing much accuracy. It&apos;s like getting a discount on your discount!</li><li><strong>Mixed-Precision Quantization:</strong> &#xA0;Not all parts of a model are created equal. &#xA0;Some layers are more sensitive to quantization than others. &#xA0;With mixed-precision quantization, we can use <strong>different bit-widths for different parts of the model</strong>, striking a balance between accuracy and efficiency. &#xA0;It&apos;s like a custom-tailored compression suit for your AI!</li></ul><h3 id="lora-fine-tuning-giants-without-breaking-a-sweat-or-your-gpu">LoRA: &#xA0;Fine-Tuning Giants Without Breaking a Sweat (Or Your GPU!)</h3><p>Now, let&apos;s shift gears and talk about <strong>Large Language Models (LLMs)</strong> &#x2014; those behemoth AIs that can generate human-quality text, translate languages, and write different kinds of creative content. &#xA0;As impressive as they are, LLMs have an insatiable appetite for memory and computational resources. &#xA0;<strong>Fine-tuning these giants to specific tasks can be a real pain</strong>, often requiring massive datasets and specialized hardware.</p><p>Fear not, for <strong>LoRA (Low-Rank Adaptation)</strong> is here to save the day (and your sanity)! LoRA takes a page from the &quot;if it ain&apos;t broke, don&apos;t fix it&quot; playbook. &#xA0;Instead of retraining <em>all</em> the parameters in a pre-trained LLM (which can be hundreds of billions!), LoRA <strong>freezes the original weights and injects small, trainable matrices into each layer</strong>. These low-rank matrices act like a subtle &quot;add-on&quot; that customizes the model&apos;s behavior for your specific task without altering its core knowledge.</p><p>Think of it like this: instead of remodeling your entire house to accommodate a new hobby, you simply convert your garage into a dedicated workshop. &#xA0;You get the functionality you need without a major overhaul.</p><p>Here&apos;s a glimpse of the LoRA magic:</p><ul><li><strong>Trainable Parameters Slashed by Orders of Magnitude:</strong> &#xA0;Compared to full fine-tuning, LoRA can reduce the number of trainable parameters by a staggering 10,000 times or more! &#xA0;That&apos;s like shrinking a mountain down to a molehill.</li><li><strong>Memory Requirements Plummet:</strong> &#xA0;With far fewer parameters to juggle, you can now fine-tune those massive LLMs on more modest hardware. &#xA0;Your GPU will thank you!</li><li><strong>Training Time Gets a Speed Boost:</strong> &#xA0;Fewer parameters also mean faster training times, allowing you to iterate on your ideas more quickly and explore different approaches without waiting forever for your model to catch up.</li><li><strong>Inference Remains Lightning Fast:</strong> Unlike some other adaptation methods that add extra steps during inference, LoRA-adapted models run just as fast as their non-adapted counterparts. &#xA0;No speed bumps here!</li></ul><h3 id="1-bit-quantization-the-allure-and-agony-of-the-ultimate-tiny-ai">1-Bit Quantization: &#xA0;The Allure and Agony of the Ultimate Tiny AI!</h3><p>We&apos;ve journeyed through the realms of 8-bit and 4-bit quantization. &#xA0;But dare we dream of going even further? &#xA0;Can we compress those model weights down to a single bit &#x2014; a world where every weight is either a 0 or a 1? &#xA0;That, my friends, is the audacious goal of <strong>1-bit quantization</strong> &#x2014; the Holy Grail of model compression!</p><p>But as with any worthwhile quest, the path to 1-bit quantization is fraught with challenges:</p><ul><li><strong>The Accuracy Cliff:</strong> Simply binarizing the weights of an LLM often leads to a disastrous drop in performance, sometimes even worse than random guessing. LLMs rely heavily on those crucial <strong>salient weights</strong> &#x2014; weights that have a significant impact on the model&apos;s output &#x2014; to capture the nuances and complexities of language. &#xA0;Binarizing these salient weights is like cutting the strings of a finely tuned instrument &#x2014; the result is unlikely to be harmonious.</li><li><strong>The Curse of Sparsity:</strong> &#xA0;To mitigate the accuracy loss, researchers have explored <strong>partially binarized LLMs (PB-LLMs)</strong>, where only a subset of the weights are binarized, while the important salient weights are preserved at higher precision. &#xA0;While this approach shows promise, it introduces new challenges related to efficiently storing and accessing these mixed-precision weights. &#xA0;Imagine having a library where some books are regular-sized, while others are shrunk down to the size of postage stamps &#x2014; finding the right book could become a real headache!</li><li><strong>The Training Conundrum:</strong> &#xA0;Training 1-bit models is no walk in the park either. &#xA0;The discrete nature of 1-bit weights makes it tricky to apply the standard gradient-based optimization algorithms used to train deep learning models. &#xA0;It&apos;s like trying to climb a mountain using only a pair of ice picks &#x2014; you might need to get creative with your technique!</li></ul><p><strong>Despite these challenges, researchers are hot on the trail of solutions:</strong></p><ul><li><strong>Salient Weight Whisperers:</strong> &#xA0;New algorithms are being developed to better identify and handle those crucial salient weights during the binarization process. &#xA0;It&apos;s like learning to distinguish the signal from the noise, ensuring that the important information is preserved.</li><li><strong>Scaling and Training Sorcery:</strong> &#xA0;Researchers are exploring specialized scaling and training techniques tailored specifically for 1-bit models. &#xA0;Think of it as developing new training regimens and nutritional plans to help those 1-bit athletes reach their full potential.</li><li><strong>Hardware Alchemy:</strong> &#xA0;A new breed of hardware architectures is emerging, designed from the ground up to accelerate 1-bit operations. These specialized chips could unlock unprecedented speedups for 1-bit models, making them even more appealing for resource-constrained devices.</li></ul><p><strong>Can We Bend the Limits of Reality?</strong> &#xA0;We&#x2019;ve been talking about 1-bit as the ultimate limit, but according to Shannon&apos;s source coding theorem, there&#x2019;s a theoretical limit to lossless compression based on the entropy of the data. However, just like we round off time to the nearest minute, perhaps we can represent model information with some acceptable loss using advanced compression techniques. This area holds intriguing possibilities for pushing compression beyond what we thought possible.</p><h3 id="the-future-of-quantization-and-lora-a-universe-of-tiny-powerful-ais-awaits">The Future of Quantization and LoRA: &#xA0;A Universe of Tiny, Powerful AIs Awaits!</h3><p>Quantization and LoRA are transforming the AI landscape, making it possible to deploy powerful models on a wider range of devices and applications. &#xA0;As research progresses, we can expect to see:</p><ul><li><strong>Even More Clever Quantization:</strong> &#xA0;New techniques will continue to emerge, pushing the boundaries of low-bit precision without sacrificing accuracy. &#xA0;We might even see 2-bit or even 1.58-bit models becoming viable options!</li><li><strong>Hardware Gets a Turbocharge:</strong> &#xA0;Specialized hardware will play a crucial role in unlocking the full potential of quantized and binarized models. &#xA0;Expect to see a new generation of AI chips optimized for low-bit operations, bringing AI acceleration to even the tiniest of devices.</li><li><strong>The Compression Combo Platter:</strong> &#xA0;We&apos;ll likely see innovative ways to combine quantization, LoRA, and other model compression techniques, creating a smorgasbord of options for optimizing models for different deployment scenarios.</li></ul><p>So, fasten your seatbelts and get ready for a future where powerful AI models are no longer limited by size and computational demands. &#xA0;A future where tiny but mighty AIs power our devices, our applications, and our imaginations!</p>]]></content:encoded></item><item><title><![CDATA[can quantum computing break Bitcoin?]]></title><description><![CDATA[<h2></h2><p>Hey there, fellow crypto-enthusiasts and tech aficionados! Let&apos;s talk quantum computing and its potential impact on our beloved Bitcoin. Now, I won&apos;t bore you with the nitty-gritty details of quantum mechanics &#x2013; superposition, entanglement, and all that jazz (although fascinating, I assure you!). &#xA0;Instead, let&</p>]]></description><link>https://tamnguyen.io/quantum/</link><guid isPermaLink="false">66ff446f5a92ba03cc46c8bd</guid><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Fri, 04 Oct 2024 01:28:05 GMT</pubDate><content:encoded><![CDATA[<h2></h2><p>Hey there, fellow crypto-enthusiasts and tech aficionados! Let&apos;s talk quantum computing and its potential impact on our beloved Bitcoin. Now, I won&apos;t bore you with the nitty-gritty details of quantum mechanics &#x2013; superposition, entanglement, and all that jazz (although fascinating, I assure you!). &#xA0;Instead, let&apos;s cut to the chase: <strong>Can these super-powered machines crack Bitcoin&apos;s code and leave our digital wallets empty?</strong></p><p>The short answer is: <strong>Maybe. Eventually. But don&apos;t panic just yet.</strong></p><h3 id="the-quantum-threat-to-cryptography">The Quantum Threat to Cryptography</h3><p>The security of most cryptocurrencies, including Bitcoin, relies on cryptographic algorithms, particularly public-key cryptography. Public-key cryptography uses a pair of keys - a public key and a private key. The public key can be given to anyone, but the private key must be kept secret. This system has been very effective in securing online communications and transactions because it is computationally infeasible for a classical computer to derive the private key from the public key.</p><p>However, quantum computers could change this. Two quantum algorithms, <strong>Shor&apos;s algorithm</strong> and <strong>Grover&apos;s algorithm</strong>, pose a significant threat to the cryptographic algorithms used in cryptocurrencies.</p><ul><li><strong>Shor&apos;s algorithm</strong> can efficiently factor large numbers, which is the basis of many public-key cryptosystems, including RSA and ECDSA, the algorithm used by Bitcoin. &#xA0;If a sufficiently powerful quantum computer were built, it could use Shor&apos;s algorithm to break these cryptosystems and steal Bitcoin by deriving private keys from public keys.</li><li><strong>Grover&apos;s algorithm</strong> can speed up the process of searching for a specific value in a database. This could be used to speed up the process of mining Bitcoin, giving a quantum miner a significant advantage over classical miners.</li></ul><p>While current quantum computers are not yet powerful enough to break Bitcoin&apos;s cryptography, the rapid advancements in quantum computing technology mean that this threat is becoming increasingly real. Building a quantum computer powerful enough to achieve this is no walk in the park. </p><p>But, as any good geek knows, it&apos;s always better to be prepared. So, what&apos;s the Bitcoin community doing about this looming quantum threat?</p><p>There are several strategies for Bitcoin to defend itself: developing quantum-resistant cryptography, creating transition plans for a quantum future, and exploring quantum key distribution (QKD). &#xA0;It&apos;s like upgrading your armor and weapons in a video game to face a tougher enemy.</p><p>Here&apos;s the cool part: the decentralized nature of Bitcoin, while sometimes messy, could be its saving grace. The Bitcoin community thrives on its ability to adapt and evolve. &#xA0;If a quantum threat becomes imminent, the community can implement these strategies through hard forks and upgrades, effectively future-proofing Bitcoin.</p><p>Some experts believe quantum computing will revolutionize Bitcoin for the better, while others predict a catastrophic downfall. &#xA0;It&apos;s like predicting the ending of a sci-fi movie &#x2013; anything is possible!</p><p>A state actor with quantum capabilities might choose to strategically target only high-value Bitcoin addresses to avoid revealing their hand too soon. &#xA0;It&apos;s a game of cat and mouse in the digital world!</p><p>Ultimately, the future of Bitcoin in a quantum world hinges on the vigilance and adaptability of its community. &#xA0;Will quantum computing be a friend or foe to Bitcoin? Only time will tell. But one thing&apos;s for sure: it&apos;s going to be an exciting ride!</p><p><strong>A Note from Your Geeky Guide:</strong></p><p>Remember, the sources primarily focus on the technical aspects of this issue. The broader implications of quantum computing on finance and cryptocurrencies remain largely unexplored. As with all things tech, it&apos;s crucial to stay informed, critically evaluate the information out there, and maybe even brush up on your quantum physics!</p>]]></content:encoded></item><item><title><![CDATA[why you should write more]]></title><description><![CDATA[<p>In our fast-paced digital world, the simple act of writing often gets pushed aside. We dash off quick texts, fire off emails, and maybe scribble a to-do list, but how often do we really take the time to <em>write</em>?</p><p>The truth is, writing, in its many forms, offers a wealth</p>]]></description><link>https://tamnguyen.io/write-more/</link><guid isPermaLink="false">66fe41fb5a92ba03cc46c8aa</guid><category><![CDATA[personal]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Thu, 03 Oct 2024 07:06:47 GMT</pubDate><content:encoded><![CDATA[<p>In our fast-paced digital world, the simple act of writing often gets pushed aside. We dash off quick texts, fire off emails, and maybe scribble a to-do list, but how often do we really take the time to <em>write</em>?</p><p>The truth is, writing, in its many forms, offers a wealth of benefits that extend far beyond simply communicating information. Writing can make you a clearer thinker, a better communicator, and a more emotionally resilient individual. It can even improve your memory and boost your creativity.</p><p>Here&apos;s a closer look at why you should make writing a more central part of your life:</p><p><strong>1. Writing Clears the Cobwebs of Your Mind</strong></p><p>Have you ever noticed how putting your thoughts into words can help you make sense of them? Writing operates on the same principle. &#xA0;It forces you to organize your thoughts in a structured way, which can be incredibly helpful when you&apos;re grappling with a complex issue or trying to make an important decision. &#xA0;As one of the sources aptly puts it, &quot;<strong>Clear writing is a sign of clear thinking</strong>&quot;. By putting in the effort to write clearly, you&apos;re essentially training your mind to think more clearly as well.</p><p><strong>2. Writing is a Workout for Your Brain</strong></p><p>Just as physical exercise strengthens your body, writing strengthens your cognitive muscles. It engages various mental processes, including memory, critical thinking, and creativity.</p><ul><li><strong>Memory Boost:</strong> Writing about your experiences, particularly significant life events, can actually improve your memory of those events. &#xA0;Think of it as creating a mental snapshot that you can revisit.</li><li><strong>Critical Thinking Power-Up:</strong> When you write about complex topics, you&apos;re forced to analyze different perspectives, evaluate evidence, and synthesize information. This process helps you develop critical thinking skills that can be applied to all areas of your life.</li><li><strong>Creativity Unleashed:</strong> Writing, especially freewriting, can unlock your creativity. By allowing your thoughts to flow freely onto the page, you may stumble upon unexpected connections and generate new ideas.</li></ul><p><strong>3. Writing Can Be Therapeutic</strong></p><p>We&apos;ve all experienced the emotional turmoil of stressful or traumatic events. Writing can be a powerful tool for processing those difficult emotions and finding a sense of peace.</p><p>Expressive writing, which involves writing about your thoughts and feelings related to stressful experiences, has been shown to have a number of benefits:</p><ul><li><strong>Emotional Well-being:</strong> Writing about your experiences can help you process difficult emotions, leading to a reduction in negative feelings and an increase in positive ones.</li><li><strong>Reduced Anxiety and Depression:</strong> Expressive writing can help alleviate symptoms of anxiety and depression.</li><li><strong>Physical Health Benefits:</strong> &#xA0;Some studies suggest that expressive writing can even have positive effects on physical health, such as improved immune system functioning and a decrease in doctor visits.</li></ul><p><strong>4. &#xA0;Writing Helps You Connect with Yourself and Others</strong></p><p>In a world dominated by fleeting digital interactions, writing offers a way to slow down, reflect, and connect on a deeper level.</p><ul><li><strong>Increased Self-Awareness:</strong> &#xA0;Journaling, in particular, provides a space for you to explore your thoughts and feelings without judgment. This can lead to greater self-awareness and a better understanding of your values and motivations.</li><li><strong>Strengthened Relationships:</strong> While letter writing may seem like a lost art, the sources highlight its continued significance in people&apos;s lives. Taking the time to write a heartfelt letter to someone you care about can be a meaningful way to express your feelings and strengthen your bond.</li></ul><p><strong>5. &#xA0;Writing Nurtures Discipline and a Sense of Accomplishment</strong></p><p>In our instant-gratification society, cultivating discipline can be a challenge. Writing, however, provides a framework for setting goals, tracking progress, and developing a consistent routine.</p><ul><li><strong>Goal Setting:</strong> &#xA0;Writing often involves setting goals, whether it&apos;s completing a certain number of words each day or finishing a draft by a specific deadline.</li><li><strong>Habit Formation:</strong> &#xA0;Writing regularly, even for short periods, can help you establish a positive habit.</li><li><strong>Sense of Achievement:</strong> &#xA0;Completing a piece of writing, whether it&apos;s a short journal entry or a lengthy novel, brings a sense of accomplishment.</li></ul><p><strong>Making Writing a Part of Your Life</strong></p><p>The beauty of writing is that it&apos;s accessible to everyone. You don&apos;t need any fancy equipment or a publisher&apos;s approval to reap its benefits. Here are a few simple ways to incorporate writing into your life:</p><ul><li><strong>Start a Journal:</strong> Set aside a few minutes each day to jot down your thoughts, feelings, and experiences.</li><li><strong>Write Letters:</strong> &#xA0;Instead of sending a quick text or email, consider writing a letter to a friend or family member.</li><li><strong>Explore Different Writing Styles:</strong> Don&apos;t be afraid to experiment with different types of writing, such as poetry, short stories, or blog posts.</li></ul><p>The more you write, the more natural and enjoyable it will become. As you continue to put your thoughts into words, you&apos;ll be amazed at how this simple act can enrich your life in countless ways.</p>]]></content:encoded></item><item><title><![CDATA[a URL shortener system]]></title><description><![CDATA[To design a scalable system, you should design a system which can handle up to millions of URLs generated per day. The length of the generated URLs should be as short as possible. They can be a combination of characters (a-z, A-Z) as well as numbers (0 - 9)]]></description><link>https://tamnguyen.io/system-design-url-shortener/</link><guid isPermaLink="false">61c6bbd87c06d1658fe72fd0</guid><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Sun, 26 Dec 2021 03:58:55 GMT</pubDate><content:encoded><![CDATA[<p>In my favorite TV show ever, &quot;Silicon Valley&quot;, Gavin Belson said that &quot;small is the new big&quot;. Although he is not my favorite character in the movie, I gotta admit that he is right. With the endless stream of information we encounter daily, it getting harder to pay any of our attention to anything. That is a URL shortener is such an essential these days as services like bit.ly or goo.gl are widely popular. These services help shorten an arbitrary URL like &quot;https://www.google.com/search?q=fasdfsa&amp;sxsrf=AOaemvLDZGX&quot; into something a lot shorter like &quot;https://www.bit.ly/dut122&quot;</p><hr><p><strong>Requirements</strong></p><p>On the surface, this seems like an easy system to design; however, designing it correctly is hard. And the &quot;right&quot; changes as technology evolves daily and keeps on changing. Things like traffic pattern also change, too.</p><p>To design a system correctly, you have to ask the right questions. Like:</p><ul><li>What is the traffic volume?</li><li>What characters are allowed in the shortened URL?</li><li>How long are the shortened URLs should be?</li></ul><p>To design a scalable system, you should design a system which can handle up to millions of URLs generated per day. The length of the generated URLs should be as short as possible. They can be a combination of characters (a-z, A-Z) as well as numbers (0 - 9)</p><p><strong>Use Case</strong></p><ul><li>User input a long URL, the service returns a much shorter URL</li><li>User clicks the shortened URL, they are redirected to the original URL</li><li>The service should be highly available, scalable, fault tolerant.</li></ul><p><strong>Quick Estimations</strong></p><ul><li>Write: 100 million URLs shortened per day</li><li>Write Per Second: 100 million / 24/ 3600 = 1160</li><li>Read: Because it is hard to estimate how many times a users will need to use the URL, we can assume the ratio to be 10:1, read to write. Therefore, it will be 1160 * 10 = 11,600</li><li>When you build something, it should be durable. So we can expect the service will up and running for 15 years. This means we have to support 100 million * 365 * 15 = 548 billions records </li><li>An average URL length will be 100. Then the storage requires over 15 years will be 548 billions * 100 bytes = 54.8 TB </li></ul><p><strong>High Level Design</strong></p><p>The high level design of this system will focus on the API endpoints, URL redirecting. </p><p>A URL shortener will require two primary API endpoints. The first one will be a POST request to create new short URL. The second one will be a GET request for URL redirecting. </p><ul><li><em>POST api/v1/url/shorten - @request parameter: longURL, @return shortURL</em></li><li><em>GET api/v1/shorturl - @return longURL for HTTP connection</em></li></ul><p>To redirect a URL, once a user send the above GET request, the service will change the short URL to the long URL with 301 redirect</p><hr><p><strong>Low Level Design</strong></p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="http://tamnguyen.io/content/images/2021/12/Screen-Shot-2021-12-25-at-9.07.22-PM.png" class="kg-image" alt loading="lazy" width="1872" height="964" srcset="http://tamnguyen.io/content/images/size/w600/2021/12/Screen-Shot-2021-12-25-at-9.07.22-PM.png 600w, http://tamnguyen.io/content/images/size/w1000/2021/12/Screen-Shot-2021-12-25-at-9.07.22-PM.png 1000w, http://tamnguyen.io/content/images/size/w1600/2021/12/Screen-Shot-2021-12-25-at-9.07.22-PM.png 1600w, http://tamnguyen.io/content/images/2021/12/Screen-Shot-2021-12-25-at-9.07.22-PM.png 1872w" sizes="(min-width: 720px) 720px"><figcaption>Workflow of URL shortener</figcaption></figure><ol><li>User inputs a longURL</li><li>The service will check if the longURL already existed in the database</li><li>If it does, fetch the shortened URL from the database and return it</li><li>If it doesn&apos;t, create a new shortURL</li><li>Store all the attributes in the database with ID, shortURL, and longURL</li></ol><p></p><p>#Data model</p><p>Although there are many ways in which you can store the data for this service, personally I believe that the model in the image below is the best option. It is a simple model, but it is enough for the purpose of this post. </p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="http://tamnguyen.io/content/images/2021/12/Screen-Shot-2021-12-25-at-8.19.01-PM.png" class="kg-image" alt loading="lazy" width="404" height="322"><figcaption>Data model for URL</figcaption></figure><p></p><p>#How to generate the unique shortened link?</p><p>I bet that &quot;hash function&quot; is the first thing that came to your mind when you think about converting a long string of information into a shorter, condensed string. But in this post, I will use the &quot;<a href="https://en.wikipedia.org/wiki/Base62">Base-62 Conversion</a>&quot;. Even though each mechanism has its own pros and cons, using &quot;hash function&quot; will results in collisions between shortened URLs. Some of you may say that the collisions can be avoided by checking in advanced if the shortened URL already existed or not. If it does, we can generate a new URL. However, do you know how expensive that can be? As in the beginning, we planned out to design a scalable system, that&apos;s why we have to come up with the most sustainable solution for our system. We can&apos;t risk making the service doing extra work while we have the luxury of designing it differently. Furthermore, base conversion is also a popular algorithm used for URL shorteners. </p><p>For those that aren&apos;t familiar with base conversion, it is an algorithm that helps convert the same number between its different number representation systems. In this case, the &quot;Base-62 conversion&quot; is used as if there are 62 possible characters for the shortened URL value. For example, the number of 649 in the long URL will be converted to &quot;AT&quot; in the base-62. Therefore, our shortened URL will look like this &quot;bit.ly/AT&quot;. Hope things are clearly for everyone. </p><p>So the workflow on the service now will be like this.</p><ol><li>A user enters a long URL</li><li>The service will check if the long URL already exists in the database or not. If it does, the shortened URL will be returned</li><li>If not, the database will generate a random ID for the URL *</li><li>We converted the newly generated ID with the base-62 to create a new unique string. Then, we concat that tiny unique string with our domain to become a short URL.</li><li>We store everything in the database according to the model in the image above</li></ol><p>*This will not be a problem with you only using one server for the service, which is unlikely. In case the service uses a distributed system, we have to create a ID generator for the system because it can be the case where 2 exactly ID being generated. But in the scope of this post, I will not talk about that. It is for another post.</p><p>We already talked about the user&apos;s workflow on converting the URL. How about the URL redirecting mechanism? </p><p>There is also one small notice here as we design this system. Because there are obviously more reads than writes, to boost the performance, we will store the mapping of <em>&lt;shortURL, longURL&gt; </em>in the cache.</p><ol><li>The user will click the shortened URL link.</li><li>The load balancer will send the request to the web servers.</li><li>If the shortened URL is already in the cache, return the longURL immediately. </li><li>Bad cases will happen if the shortened URL is not in the cache, the service will have to go find it in the database. Worst case scenarios is the user enters an invalid URL.</li><li>The longURL will be returned to the user.</li></ol><hr><p>Well, this post has been long enough and I think all the necessities of designing a URL shortener has been addressed. Please let me know at hi@tamnguyen.io or visit my website at tamnguyen.io if you have any question regarding this post.</p><p></p><p>Thank you everyone and stay safe.</p>]]></content:encoded></item><item><title><![CDATA[singleton design pattern]]></title><description><![CDATA[<p>The Singleton pattern is one of the simplest Design Pattern in the field of Computer Science</p><p>Simply put, this pattern involves a single class which is responsible to create an object while making sure that only single object gets created.</p><p>There are many ways in which we can implement the</p>]]></description><link>https://tamnguyen.io/singleton-pattern/</link><guid isPermaLink="false">60c17b01281942274667432c</guid><category><![CDATA[tech]]></category><dc:creator><![CDATA[Tam Nguyen]]></dc:creator><pubDate>Thu, 10 Jun 2021 02:41:28 GMT</pubDate><content:encoded><![CDATA[<p>The Singleton pattern is one of the simplest Design Pattern in the field of Computer Science</p><p>Simply put, this pattern involves a single class which is responsible to create an object while making sure that only single object gets created.</p><p>There are many ways in which we can implement the Singleton pattern, but the following is one:</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn-images-1.medium.com/max/800/1*oR2LfFWqcuhNW2mAgznHCA.png" class="kg-image" alt loading="lazy"><figcaption>Singleton Implementation</figcaption></figure><p>In the book <a href="https://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional-ebook/dp/B000SEIBB8" rel="noopener">&#x201C;Design Patterns: Elements of Reusable Object-Oriented Software&#x201D;</a>, the <em>applicability</em> of the Singleton pattern is described as follows:</p><ul><li>There must be exactly one instance of a class, and it must be accessible to clients from a well-known access point.</li><li>When the sole instance should be extensible by sub-classing, and clients should be able to use an extended instance without modifying their code.</li></ul><p>For the second point in the list above, there is some cases that we need to use Singleton design patterns, as following:</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn-images-1.medium.com/max/800/1*JB-s-6f4LT_xEq1HArwY2w.png" class="kg-image" alt loading="lazy"><figcaption>Singleton use-case</figcaption></figure><p>Although the Singleton pattern can be useful, you should not overuse it the same way you should not overuse other patterns.</p><p>In practice, the Singleton pattern is useful when exactly one object is needed to coordinate others across a system.</p><hr><h4 id="warning-often-you-find-yourself-use-the-singleton-pattern-it-is-also-an-indicator-that-you-should-redesign-or-re-evaluation-your-application-design">Warning: Often you find yourself use the Singleton pattern, it is also an indicator that you should redesign or re-evaluation your application design.</h4><p>The reason is because your application is either tightly coupled or that logic is overly spread across multiple parts of a code base. Singletons can be more difficult to test due to issues ranging from hidden dependencies, the difficulty in creating multiple instances, difficulty in stubbing dependencies and so on.</p><p>To enhance your understanding about the Singleton pattern, I would recommend this article from IBM&#x2019;s J.B. Rainsberger <a href="https://www.ibm.com/developerworks/webservices/library/co-single/index.html" rel="noopener">here</a>. It is an awesome article covering the Singleton pattern that I think everyone should read about.</p>]]></content:encoded></item></channel></rss>