现已推出预览版 – Amazon CodeWhisperer – 机器学习助力的编码助手

117
0
{"value":"当我准备写这篇文章时,我花了一些时间思考我在职业生涯中使用的一些编码工具。这包括我上初中时使用的面向行的编辑器(BASIC 解析器的固有部分)、我刚上大学时使用的 IBM 键控打孔机、各种类型 [Emacs](https://en.wikipedia.org/wiki/Emacs) 和 [Visual Studio](https://visualstudio.microsoft.com/)。早期编辑器非常实用,但随着 CPU 功能变得更加丰富,它们也越来越复杂。起初,这种日益增加的复杂性采用词汇辅助形式,例如动态完成部分输入的变量和函数名称。后来,编辑器能够解析源代码,并根据语法和数据类型提供帮助 – 例如,Visual Studio 的 IntelliSense。这些功能在当时都开创了新天地,而且每个功能都有相同的基本目标:帮助开发人员编写更好的代码,同时减少日常工作和重复工作。\n\n**++宣布推出 CodeWhisperer++**\n今天,我想向大家介绍 [Amazon CodeWhisperer](https://aws.amazon.com/codewhisperer/)。CodeWhisperer 经过数十亿行代码的训练,由机器学习提供支持,旨在实现相同的目标。无论您是学生、新开发人员,还是经验丰富的专业人士,CodeWhisperer 都有助于您提高工作效率。\n\n我们推出预览版形式,支持多种 IDE 和语言。要开始使用,您只需安装合适的 [AWS IDE Toolkit](https://aws.amazon.com/tools/),启用 CodeWhisperer 功能,输入您的预览访问代码,然后开始键入:\n\n![image.png](1)\n\nCodeWhisperer 将持续检查您的代码和注释,并为您提供语法正确的推荐。这些推荐根据您的编码风格和变量名称合成,而不仅仅是代码段。\n\nCodeWhisperer 使用多个上下文线索来提供推荐,包括源代码中的光标位置、光标前面的代码、注释以及同一项目中其他文件中的代码。您可以按原样使用推荐,也可以根据需要对其进行改善和自定义。正如我之前所提到的,我们使用从开源存储库、内部 Amazon 存储库、API 文档和论坛中提取的数十亿行代码训练(并将继续训练)CodeWhisperer。\n\n**++CodeWhisperer 的实际应用++**\n我在 PyCharm 中安装了 CodeWhisperer 预览版,并对其进行了测试。以下是一些示例,向您展示了它可以执行的操作。我想构建一个质数列表。我键入 ```# See if a number is pr```。CodeWhisperer 完成此操作,然后我按下 TAB(实际键特定于每个 IDE)接受推荐:\n\n![image.png](2)\n\n在下一行,我按下 Alt-C(同样是 IDE 特定),然后我可以在一对函数定义之间进行选择。我接受第一个函数,CodeWhisperer 推荐函数体,以下是我所拥有的:\n\n![image.png](3)\n\n我编写 ```for```语句,CodeWhisperer 推荐循环的主体:\n\n![image.png](4)\n\nCodeWhisperer 还可以帮助我编写用于访问各种 AWS 服务的代码。我从 ```# create S3 bucket```开始,然后按 TAB 键完成剩余部分:\n\n![image.png](6)\n\n我可以为您展示许多更出色的示例,您只需加入预览版并试用 CodeWhisperer,就可以了解更多信息。\n\n**++参与预览版的试用++**\n预览版支持使用 [VS Code](https://code.visualstudio.com/)、[IntelliJ IDEA](https://www.jetbrains.com/idea/)、[PyCharm](https://www.jetbrains.com/pycharm/)、[WebStorm](https://www.jetbrains.com/webstorm/) 和 [AWS Cloud9](https://aws.amazon.com/cloud9/),以 Python、Java 和 JavaScript 编写的代码。AWS Lambda 控制台支持已在准备中,很快就会就绪。\n\n[加入 CodeWhisperer 预览版](https://pages.awscloud.com/codewhisperer-sign-up-form.html),让我知道您的想法!\n\n– [Jeff](https://twitter.com/jeffbarr);\n\n\n\n","render":"<p>当我准备写这篇文章时,我花了一些时间思考我在职业生涯中使用的一些编码工具。这包括我上初中时使用的面向行的编辑器(BASIC 解析器的固有部分)、我刚上大学时使用的 IBM 键控打孔机、各种类型 <a href=\"https://en.wikipedia.org/wiki/Emacs\" target=\"_blank\">Emacs</a> 和 <a href=\"https://visualstudio.microsoft.com/\" target=\"_blank\">Visual Studio</a>。早期编辑器非常实用,但随着 CPU 功能变得更加丰富,它们也越来越复杂。起初,这种日益增加的复杂性采用词汇辅助形式,例如动态完成部分输入的变量和函数名称。后来,编辑器能够解析源代码,并根据语法和数据类型提供帮助 – 例如,Visual Studio 的 IntelliSense。这些功能在当时都开创了新天地,而且每个功能都有相同的基本目标:帮助开发人员编写更好的代码,同时减少日常工作和重复工作。</p>\n<p><strong><ins>宣布推出 CodeWhisperer</ins></strong><br />\n今天,我想向大家介绍 <a href=\"https://aws.amazon.com/codewhisperer/\" target=\"_blank\">Amazon CodeWhisperer</a>。CodeWhisperer 经过数十亿行代码的训练,由机器学习提供支持,旨在实现相同的目标。无论您是学生、新开发人员,还是经验丰富的专业人士,CodeWhisperer 都有助于您提高工作效率。</p>\n<p>我们推出预览版形式,支持多种 IDE 和语言。要开始使用,您只需安装合适的 <a href=\"https://aws.amazon.com/tools/\" target=\"_blank\">AWS IDE Toolkit</a>,启用 CodeWhisperer 功能,输入您的预览访问代码,然后开始键入:</p>\n<p><img src=\"data:image/png;base64,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\" alt=\"image.png\" rel=\"1\" /></p>\n<p>CodeWhisperer 将持续检查您的代码和注释,并为您提供语法正确的推荐。这些推荐根据您的编码风格和变量名称合成,而不仅仅是代码段。</p>\n<p>CodeWhisperer 使用多个上下文线索来提供推荐,包括源代码中的光标位置、光标前面的代码、注释以及同一项目中其他文件中的代码。您可以按原样使用推荐,也可以根据需要对其进行改善和自定义。正如我之前所提到的,我们使用从开源存储库、内部 Amazon 存储库、API 文档和论坛中提取的数十亿行代码训练(并将继续训练)CodeWhisperer。</p>\n<p><strong><ins>CodeWhisperer 的实际应用</ins></strong><br />\n我在 PyCharm 中安装了 CodeWhisperer 预览版,并对其进行了测试。以下是一些示例,向您展示了它可以执行的操作。我想构建一个质数列表。我键入 <code># See if a number is pr</code>。CodeWhisperer 完成此操作,然后我按下 TAB(实际键特定于每个 IDE)接受推荐:</p>\n<p><img src=\"data:image/png;base64,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\" alt=\"image.png\" rel=\"2\" /></p>\n<p>在下一行,我按下 Alt-C(同样是 IDE 特定),然后我可以在一对函数定义之间进行选择。我接受第一个函数,CodeWhisperer 推荐函数体,以下是我所拥有的:</p>\n<p><img src=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAccAAADUCAYAAADpyegzAAAgAElEQVR4Ae2dCXBb5bn3dTvfJO2QC0M6cEOZNAN0oNyh90umlFI+oIXCdKGlpbTlQjIshbK0cMNyaSm0DRASSCXHdrwocXYnTkgix5u8xJZjO5a3eInleJHtWPEiL7Iky/ISW47t/zevjo50JGuzY8mS/HjmjM457/47j/XX85z3nFckEolAGzEgGyAbIBsgG1gmNiDy9w8jIyPLYmtsbAT9EQEiQASIwPIkYBN/f7VRtCyEkf0AIHFcnv8QNGoiQASIACNA4ujBE14e4jgFbWUqTua2wEz/D0SACBABImAnQOJ4DeI4VHUUKdUmK8zBsmQcrx22g/W6Y6xEskSCQ+V6LtukGumxEuzMUmPGa8F5Js6OQaNMxcGEGEjEYojFu3GuX1iHAdUpidiTrca48PQi7RsrkxGV0YLpedd3GXmxYkgkEuu2M24PjuaqoLfMryLP7bP6XVnMr27KTQSIQGQTsInjv4tEon/zJ7a6oLCq2aTDpWoFMmQy5NRqF1RHoO91Mk/R1+ZkCtPdKNiXAfUkgKudyNsnR7ufX96zHbk4cPAgErLbMQtgpPY49uzbh2SlzqmJaz2YVGciRpoJVa8Bw2YzzOYxWBZVfb31cBaXcmKwbyFjGqvDMfExVOlYn4dh6KlDmlSCo9VD3hp0SfPSvrV+GRrZtaM/IkAEiIAbAjZx/JZIJLpJJBKt8CWQ8xY2s3kAzUVy5Cqb0VyVHdLi6IaP/ZQwzNqRG2v3anjvhn2Kj5yHP76juToFyXl5SD5ajZHZQSgPHkFmRhLSmzl1nW3Pxs59SgzyrVsaIROnoHaEP+Hfp+bMLuwp7p2b2ViJQ2LOMxOLpSjpc8kyocJJ8QkoGwqRIo1FbOJhZDcYBB6gBf312UjZE4edkp3YlXQCpZ2872nG+SMOr4/nIxYnokjr0o6nw55CJMTlo0uQ3qOQIia3w3rGOx8/2mf1S/NQXZWKfXGxiN8nQ1WvUClnMdpVgczk3YiLjUPSsXyoTQ7/d6ZNjp37FKj3WF7QcTe7M+z67mfl03AgLgZxSadQoRW075O/9/4BMzBfKsGpffGIjT+MM42VkImPoW7M1hmf9U/B0JSPY3viEJuQjIImVv44LljLz6JNHg3ZWSVSEuJxorYDF2RSxO1X4LKfPw7dIKFTRCDkCNjE8f+JRKK7RSLRf/gSyAWIYz861FoMmc3oqYkMcbSMm9GaJ8XJ6kGrZ9OcnQhZnQHmMYvVE/R1lTvz43GqvgFyaQE6uxXYm14J5VFHmI95kmJZA+zfNfpyHIjORgdzM33+6VF2KBrR0dHYKRFDErXTuh8dHYvcSza38eoERpgnOVCBo+IvoeJ1ja+7/xx2S6Q4ea4ZvfpBdJafQGxMJlptHZrtLcbuuJOo6tbDZNKhrTAZMcmV4Py6aUyMMo+vBfJdCTjTxvbZNoZJh77wLbn9nFDJrD80HPdBLWjJiMbe0gFrfu98fLdvrV+agkJVN/T6HlTJ4iE5UQ9eO2YGq5AclwxFS681/bwsHrGZavv1MFUfhVh6DEUeyrsdlOAk+3EklqagSNUDvV6Latb+SZUjtO2Dv6/+zZpqkBKdBLmqB4M6Dc7JdiM+Jgca3n581D/dX4p9MYe58Q92oixzLxJjc6GxjsGM6qMSHK/oRV/lcYgPFuBS/0Vkxs3jx4+ABe0SgVAlYBPH34hEoodtAsk8SI8h1nmLozAcGiniCOhQuv9L1Fu/TftRvPcUGq74e4nHceFEFLLbmYgdR2rqPig0LcjceQoXJ7g6tGeliC/otFfIwrDRB8tgsJ/xtjOFMZMRRmMz5PEJyG1h+2wzYXzKpVxfCaS78uBoiUu/2pIBiVQBLR+CvcI8yWOoG+XSh5k4nFTB1l2XSm2HEw1cGV5x3Odye7avZA+i5W3cD40ZC4zqXOyLPoJqI/ft7hcfL+2z+mOy1OBxWJrSID5cYRP3WfQUSiFVdNt/6Ew1p0OcXGWPCrAfN57Lux2S08luRQJi5W24ajvL1V8J7u414J2/7/4Nlh1EdEaLXcwnGmQQHyqH0dae9/phHX9iQZf9/vcV1SmIk/n+dSE/7iAqDMB0qxyJVjvtxVkpd85poHRABMKYgE0c3xCJREwgmQfJQqzsHqTbv4gXR3f3Hdn1FYZVYajAwZRqWKOcg2XYf7zW7nX4tgUtCqXMS5xGS0YUJIfKYBgoRVKiAlzU8Sqa0iQ4cp7/qgTGLpyAJK3J/mXuuw0AliakslCsTdDclWFfypLkKvuXMp/HUHEYUZlqRxh1yghNUyf4yOLVnmIkRcUi6Vg6cour0NQ7av8i5etA/znsicl1eCv2BF87U9bxi20e784oCXZKj6PoktkmVn7y8dg+V/+xGkeM2uoJnm60iQkXlk1rsvvtsHp6dk9+AvUnxfBc3tf4LGiQifGlPcYJrv7Ui3Yx887fV/8saDwtRkq1w++22k96s12Mvdc/ippjYqRedIR5rRObeHu4osIJSQbUV4GhqmSuHWZrknTrOV+jp3QiEC4EbOL4sUgkek0kEv1SJBLdKxKJvuHJe4x4cfR04Xhx1OTHI3qnBGKJLVzJ9tkX+bFq/x6HsN4/5L1OrjWr5/JlnU1gjSg/JEGm2hGD7CtJwm6/b9jZRsBE20coVl9+CFFuZsiyiTR7nae1zsFiMfVAXV+JInky4iVSFHTyfhiX1eqd2L2xOcW9nBiEcr8EsppBq8c7NOw6icg/Pp7bZ/VHI1cQo+7Mj4PUzrcLZ+KkEN6q7SqIh7Swx9bnfhTv9lbey9CsSTqU7o1F/mVHPmv9Zx03ZL3z99U/PZQHoiBv491+oLd4j9O9Z+/190CRkIBCR3fA7rHzIW2waMPec2BTxzpyEziOOiX2JpWAC3o7xkV7RCCcCZA4joxY74kx8ZuYcB8oZOdZ+szMDCyjfShP2Y38Vhaq7IXySBIUHUYYRybtYTivBsG8RJfJJjrlPsTZvy2ZZxmLfHuscxz1JyQ4wc2G8Fq1MNE6acVrKNY2m9N2H89RlvMcZA3uWWB2BtNXpwVj5fILPSFWF/NOJAt5jGOmDVlRSfA8ydU/Ph7bt9Z/CJV8jBFXUH9CjBNcjByYUSNDLExnntpO+2QpXG1BmkSY7lLeAdL9nrX9PXBgH8b5I1E4bZ8664O/r/5BC0XiLhTYZzONo+5LMU7y44M/9QtDpHooD4rB24M12mD1osdQc4zjwMKrUTIVHL6m+6HTWSIQTgQCLo5sMsbw8LB1665mE3J6uGOz+Zq8UOG9zMXYb25uRltbG6anHR4bu5DsmJ1vaWnhrqulBWl7FNCy218TjZDtLYLrZE9vBmD1aPiQrDXjNNSZUUip5ue5GlB2UIwDhV2YmJmCqbUQyXExOMPNhvBWtVOaueaY21DsrGXcNkFmAGVHxThepeOO7ZOJtFAkxEPR7VSd42C0FiniA9YfBKNjIzBolEjZdQiVtkc2+YwDpfsgOVaGfhObjDOKCf4GG5/B0+dQFQ5LTsM2cddNLv/4eGyf1R+VAYdj3oci4Y+R2T4U7Y5CcvEl6Aw6aKpkSNydh8v8Nz8LqXsr76bHTqdM1UiOTsCxwhYMsPorTyEhPgNq+z1rH/x99Q8cn/2KToxPT2FIrcDhXUJP1Vf9XTgTH4XkIjb+AbRVpiNpZzwUNseZ3c+UWt3KHigSOY4s7Jro0WCcRk8HRCBsCARBHDtRlSlDamqq05av6g8pcWQCq9Vq0dnZidlZbuIH+2THAwOOgJFFnYU9ii6r5zTZlIY9hT0CL8r3dWehzJicS4IyLEwYjZxL/FRCwKyWI2knm2kaj6PnipEWcxhV83nED0C3IhFSQaiO7xm7f8Y/XiH8tE+AsYZ9j0JwS44vavucRE+5DPvjoyGJikHC/pNQqI2O+5O2XDODdZDt3YUo68sHkmF7V4JLXXMPrZOPfITo/OHjqX1r/bawoLX1qWacFifD/tsEwFiXErIDCYiNTcSBUwo0C94+4E/5uaMSnOkswK79RaivOIHdsbFIPJSOyh7BdGGf/L33j7U0opZjTxR7nCYOycVFSItNhv0Wts/6ZzDUlIPDibGIlaZA0aDESftjRLNoz47m7pdONOCUPbwa63QPVjBa2iUCYUsg4OK4GF5dsOpgXq5Go7GLIRNFoVgG8yrPTl3B2MRVzI7U4OjOLLQ5O7Q+usJN+rCHCn3kDsfka+OzdCMeZzM/TwU+BDlrGcPo+NQC7Wfp+FDLRCBUCJA4urw+joWAW1tb0dvb6zbMGowLNzVuezZwWA/NuaOIO90Ie9TNSwdmLGPW5y6N3RU4vusI5vVCGS/1hlrSQvmEwjjY5CrH/eXA9MiJT8kRxKU1eX/sJjDdoFqJQFgTIHF0EUfmpRoMBusEnPFxQbgraJeZm+BhDXnujMO+U8XoGHGEXL11g91nE4ujsGvPMRS0zA11eisbPmkL57P0Y+Qe30l2zAYKQJdc+ZRAM+qf/QSgM1QlEQhbAiSObsSRCST/6EbYXlnqOBEgAkSACCyYAIkjieOCjYcKEgEiQAQilQCJI4ljpNo2jYsIEAEisGACJI4kjgs2HipIBIgAEYhUAiSOJI6Rats0LiJABIjAggmQOJI4Lth4qCARIAJEIFIJkDiSOEaqbdO4iAARIAILJkDiSOK4YOOhgkSACBCBSCVA4kjiGKm2TeMiAkSACCyYAIkjieOCjYcKEgEiQAQilUBQxNHUp0alIgeZaenIyjsHVZch5FbkcH25Ob0hJ1JNnsZFBIgAEfBNIODiaDb3oi43C+eae2E0mTDQVgZ5ViUuD4fWeo4kjr6NhXIQASJABJYLgcCLo6kTqspmaG2LG5vNGlSkF0ClI3FcLkZG4yQCRIAIhBuBgIujq0dm7lfhTLoSHSYSx3AzFuovESACRGC5EAiqOJpNfVApMqFQ9WHY5km6imeoHNM9x+XyL0DjJAJEgAjMJRA0cTSbB9GmzIZc2QpdiN9vZAJN4jjXWOgMESACRGC5EAiKOJrNBmjO5yGrqBF9IR5O5T1XEsfl8i9A4yQCRIAIzCUQcHE0m03oqVcgS1GPnjARRvIc5xoKnSECRIAILCcCQRDHHlTLZZClpiLVvqWhvIMm5CwnQ6OxEgEiQATCiUDAxZEPU4bbJ4VVw8mMqa9EgAgQgcUlQOJIr49bXIui2ogAESACEUCAxJHEMQLMmIZABIgAEVhcAiSOJI6La1FUGxEgAkQgAgiQOJI4RoAZ0xCIABEgAotLgMSRxHFxLYpqIwJEgAhEAAESRxLHCDBjGgIRIAJEYHEJkDiSOC6uRVFtRIAIEIEIIEDiSOIYAWZMQyACRIAILC4BEkcSx8W1KKqNCBABIhABBEgc3Yjj4OCgdVUO9lYf+iMCRIAIEIHlR4DE0UUc9Xo91Go1DAaD9XNsbCyCrWIK2spUnMxtgTmCRxm6Qwt1/qHev9C9stSz8CdA4igQR1dBZMLIhNKTQA5VHUVKtclqBYNlyTheO+y/RUz0oVqeDGlsNGKlh5FxXosJ/0svUk4DqlMSsSdbjXF3Nc6OQaNMxcGEGEjEYojFu3Gu313GcDt3GXmxe0JgLD74LznWUO/fkgOiDkQwgYCLo9msg0ohXJFDBlleHfrMobUqh9FodCuEHgVyuhsF+zKgngRwtRN5++Rot/hpKTM6lCfHIVnRDK3BiIFWBQ5F7UfZoJ/lg5RtUp2JGGkmVL0GDJvNMJvHYJkJUuOBbGasDsfEMjT6e70C2ReqmwgQgZAkEHBxFK7GYdZfRrUiD0p1P0whJI5ms9l6j9GTh8jOs1U6ZmY4ZejIjYVEIpmziY+ch1++Y/857I6R49I0bxPDUBfl46JdHGcxqilHRrIUMTFxSDqWD7XJnhmAr3S+Xg+fxkocEout/ReLpSjpc59Pc2YX9hT3uk/0enYKhqZ8HNsTh9iEZBQ0VUImPo4LfkaoZ9rk2LlPgfqqVOyLi0X8PhmqetmvEO5vWp2FqEPlMPInLBchE6eg1nqLeBZt8mjIziqRkhCPE7UduCCTIm6/Apd5MewpRMKeM6iuPI39rP69Mpzv4xNZpT74TqhwUnwCyoZCpEhjEZt4GNkNBgivEN81t58++VvQX5+NlD1x2CnZiV1JJ1Da6da3d1v9THs2du5n/NJwIC4GcUmnUKF18IOv/nvtnx98ffFz22s6SQRCi0DQxHF4sAOV+QWo0gxavRChaIbCvq8lqoTplnEzWvOkOFk9CLN5GM3ZiZDVGWAes2DWn+s7UIqkqC9RP+o+94yuAocTv0RZez8Mhj40yPcgJlMN/uvbV7rPLlydwAjzBAcqcFT8JVRO37t6lB2KRnR0NHZKxJBE7bTuR0fHIveSf27jdH8p9sUchqKlF/rBTpRl7kVibC40PjvGZTBVH4VYegxFqm7o9T2oksVDcqIevLYOVSVDktGCq3x9OiWSYnKgseI0o/qoBMcretFXeRzigwW41H8RmXGJKNJyBSZUMoilX6K0ZQDDwwOoS0tAlEyFK7b6fPJlP24kUpw814xe/SA6y08gNiYTrfwF4vvl6dMrf2C2txi7406iqlsPk0mHtsJkxCRXYshTfS7nzdUpEEtTUKTqgV6vRTXjd1LlCJ376r/X/vnm65OfS3/pkAiEIoGgieOASoHU1NPIyjsHVY8RoSCIwj4Ixc/dhXJO16F0/5eot35b96N47yk08N+s7gq7nps1ozFdip0JycgqqYPGJPxWnUVXQQIOlevtpWbUWRAfrbZNmvGVbi/me6evBNJdeeh0yjmFMZMRRmMz5PEJyG1h+2wzYXzKKaPHg55CKRILusBL6RXVKYiTK8HdnfVYzJ7QmR+PmCw1+OYsTWkQH66wi4MmLxZJAneXeZISe3oX8uMOosIATLfKkVjARteLs1LuHGukr2QPdmW328V1qjld0D/ffK+2ZEAiVUDrGCBOio+hbtQ+BP923PIHhtmPg5OqBd+D7lYkIFbe5mF8gN/9d9s/X3x98/MPDuUiAktLIGjiyITIPGxEb1MJMrNr0BNCYVXWN1782Kfrxi4Rn269XIYKHEyphjWKN1iG/cdr7V6N/5fTgqHOBpTlpCAx+gCKtbxAmnH+CPPYOO+NeXDRURJI0ppsYuEr3f8eMFGQJFe5Fy1LE1JZqHK+X/gYRc0xMVIvOsJ4xspkRGWq/Qw7TqD+pBjHahyP0Vg9ydONNs95DLXHxZCpHL9GnOq/osIJSQbUVwHmYaZUmwE2Fkm69RwwhaY0Cb6s4/1QJkYpEMsu2ur3zddQcdh5PFNGaJo64RT59uMyeOJ/tacYSVGxSDqWjtziKjT1jtp/aPiu1oIGmdhpfFZPMpUfH+Bv/932zydf3/x8j4FyEIGlJxBUceQE8hKUpxVoGgytCTlO4ufmuvDpmvx4RO+UQCyxhRvZPgs9HuM9OzeFvZ6aRrdCiujsdltItgtn4vaisIP32LhP0xgvnr7SvTbmlKgvP4SoLLX7L14m+tHZ6HAf+XWqx/mgB4qEBBTaQpgsjd2j3Vs64JzN41E/indHI1fQcGd+HKR8TBRaKBLjoOh2VGCtn59Gy7ydveegs7abwNWjU2JvUgm4HgxCuT8W+Zcd5bsUCZDaO+yb76WcGOzl23NUM+89b/wtph6o6ytRJE9GvESKgk7ej/bVjA6le13GVxAP6VnHBfG3/27755Ovb36+RkDpRCAUCARcHM36DtQqG6G1eYrmYZs46sNTHC2jfShP2Y38ViZavVAeSYKCCdnIpH/3Gw0NyJFfgH3uDQBt0W7sytNw5WdbkSk+AubwcH9TGDMMYoTXRl/pfDGfn7NgX5L7PIjWLJvUcbAMBp/1uGSYUSND7AhhAnooD4oha/DzQZWrLUiTHEKlfbbNFdSfEOMEF8MGcAlyp5m9BpQd3IksNSceVm9H1gALxlBzjKuHhVfZPUWrLzvThqyoJDiGze6hReF0o61/PvlynrHf43HB4zj0wH92BtNXpwW2xLUn9HQddbjZs45vj2B8wzh/hI2P9+T97b/7/vnk65Ofmz7TKSIQggQCL47DXajKyoJS3QeTyQhtYzEyc+vQG6JhVU/XiPccYWlB2h4FtMyjmmiEbG8RPEz2dF/VcA2ORkmRUdcNvVEPbbMCybv2okTLTy8ZQEnSThwp6YDOqEePSo6kuAyo7VFEX+num+XPzlrGwWbnms0DKDsqxvEqHXfsMpnIXHNMEMrlS/vxOduFM/FRSC66BJ1hAG2V6UjaGQ9Fjx9lWRYWso7KgNo+9bMPRdJY5NtvjDLPKArJxRoMmY24XH4C8UmF0Nocq8GygzYvsAeKRK4eFnZN5F3NoSocjorD8XMdMJpN6KlJgzQ+A2r7pCRffLVQJMQ7ea5+jsyazSf/0VqkiA9Yf3CNjo3AoFEiZdchVDpuQXtvzlSN5OgEHCtswYBBB03lKSSw8dntx3v/ffXPJ1/44ue9+5RKBEKFQMDFkYVSjT0NUJ6R43RaGuSKcrT0mUJyQg4TQG8bu2gWdRb2KLqsv+wnm9Kwp7BH8Cvfn8s6BV3DGRzbm4CY6FjsTs5EmcbsFNoc7ynH6QOJiI2Jx74vz0A1wLuNXP2+0r31gt1/cvcYSrS8zWkc3YpEp1Cctzqd02Yw1JSDw4mxiJWmQNGgxEn7YxbOOd0dzXbkItoWFrWmTzXjtDgZ1YJnZNj4Uw8kICYmHvtPnYXaxP+wmEV7djR3v22iAafs4dVY+z1Mrn4FasuOQxobi8RD6ajU2pXR2qRXvpZGyMRHIbgl6m4YHs/55j+JnnIZ9sdHQxIVg4T9J6FQG/28XwugswC79hehvuIEdvPj6xGMz0f/vfVvBr75soF75eeRDCUQgdAiEBRxZAIZbpvdUwyt6xWk3nCTOhyhzCA1S81cM4FxNjP4lC2EfM21UQVEYPkSIHH0INzLURxnLGPW5zaN3RU4vusIqv19sG75/v+E3Mj7SpIQJ5xtFHI9pA4RgfAgQOJI4mi31IHSfRCLo7BrzzEUtMwjlGevgXaWlsA0WjKikOyYzbS03aHWiUAYEyBxJHEMY/OlrhMBIkAEAkOAxJHEMTCWRbUSASJABMKYAIkjiWMYmy91nQgQASIQGAIkjiSOgbEsqpUIEAEiEMYESBxJHMPYfKnrRIAIEIHAECBxJHEMjGVRrUSACBCBMCZA4kjiGMbmS10nAkSACASGAIkjiWNgLItqJQJEgAiEMQESx7AVx2nU5SXj14dU6A1JAwxO/yzaEkjffQYSpf8QNEc344+fp0LtWDLS/8KUkwgQgWVBgMRxEcSxelc+1uxgKwjO58+C8n3l+M7Dcoi+mwXRgxdQMp/isKAg+V+47bNzUM+rXLAyB75/Y6p4PHH7PXjuX2loNvk/ronuUuzZ/BC+ee87KNDNe8FK/xuinESACIQtgaCK43C/CgWZxVCH2FqO7KXo3lbj4NM8XeUFiaOpE7/aUIgPy0fQMzAOrc4CP1c89NSN5XV+ohp/X78WG09onVY08R+CGaV/2YBbN8mc1tb0vzzlJAJEIJIJBE0czeZBNBdlQKHqs64fGGqrdPh60bhT+tAgPt9ciG88mIN7/7cDB8UFzp7jhBlHt5fi7ofluOGxs9i4V4c5Doq2HQ9vqEKa82pUftla9YkdEP3hQ277uBj2pQ750qMaSGJjsO71j7DitW14IKEUdfb1/PhMnj5NSNz6Nzwvr8PmT7Zj9Z++wGMH66DhV4UCwNpfe7AUu2MkuOmNz7Bh5xmU2hdn5tI99k93Dg+/J8On+3bg5g8ykF2dhf/68+f4baHOsWTWZD+OHpLi7j/9AzdsjsHG9LY5/MZz/oSb7v0CzXMcPy2kj6/ES3EybP7RHVhz6z144v1MdNvXhxSMW38Mv1n1GJLcrTU5VoIPNtyCO36fjG5BEdolAkRgeRAImjga2pXIyq1Bj8kckstXOYmfm2vvSJ9ByY4zuP7Fi8hVj6CpXI1Nv8oViOMsauIUuPUtNYraR9Gq6sLrT2XjuVzbSuzqFqy/X45V38/CVzZk4Wtsn20/VsHf22aWMTO0BhM0ikMQuRHHi6ejcP0XCpT1GnG5uxU7JNvxiLzfzajcneLE8ZvbsyHr0EGtLsdzb/8DvylxqB8Txxs278WnNVq0dqvxxeefYO1+NfhVA732j4njq0lI6OiGZPs/cf+XLbhYfASr/3oGjdbuzKDm5L9wq+QsiroH0dpWg9f/ugXPlY06dfbijntx09sKp3PcASeOd/5iK1Lr2qBWJuK3676OF1KNbvK2I+oHq/Bm3szctKF0vLBmJVbdL0HL3FQ6QwSIQIQTCIo4mk1dqJJnoVIzFJLCyIdVvV1rhziOQPJMFl4u5L9QZ6HYli0QxxGIf5+Nd6sctV1KLsZ1H/dxJywWdHWPoqO6CfdtKMPujlF0sOOeCbu4OEp635usOupWHM8lf4pbDqixAKcUACeOT551zFZRpUpww37HnU0mjisSVPb6p1UyXP9+LlQu3XXbPyaOf06z/hBg9WwstwDs3JvpKLOW10H80Ra8yyml9cwleRyu29vsVHv5h3fgrn8IINtTOXH89WHHPWDlB7fhWx9V2HM4dvqx9+crsfGUY6yONMBiGoBhfI5rKsxC+0SACEQogYCLo9k8DG3dGWSeU0NvNsNsaEahTIl2c2h5kLz4sU/XjV17Ph0YwpYnsvHeeYdFON9zZOmZWHGfzSO8X47rvpcJ0QdaCCKTwDWEVfmW3YoPgDF1Nja8ugV3bz2E148qkNxogN9RVZs4vlg1xTeDzrxEiBJU9v4zUVuT3G5Px4gW8vPdcMgRl+S2f57E0SaYQA+2vPc3rHjlH1j1Krdd98qHTu2z2sv+drtXcXw53eapA6jfth5r3j3r6K99jxPH5046vGJ7Eu0QASKwrAkEXhxN7VCePgNVHyeGoS6OnqxhfuKYizfP2DxC5hWyTbyYP3oAACAASURBVO8QG2sbARRHVv+4sRs5JSXYemg/7nn1n/hFobuworvRcp7jvMTRXTUAFi6On+LNikF0DAg2k0PsWHOVf7/TgzfIeY7+iaMWu3+yEs/LxjyMgE4TASKwXAkEQRzVKJadRlpmJjKtWxpSQ8xzNJvNVs9wYsL9fFF2nonjzAwLpbKwqa+wahZeK+bDrsAV4yjUuuCJ4+zMDGYE0cBL8niIYmrgnwS4D6veeMA5rOrkOXr471mYOLKw6kd4rdbhZ18ZHoTa6Hxt2mIewqo/pLmZ4TsfcazDlrtvxnvFAliCscxOjuGKoxuCFNolAkQg0gkEXhzNJhj1euj5rU8FRYiJI7vn2NzcjLa2NkxPO09rZMfsfEsLPy1j7oScZ3+ZI7jnyE3IufHFi8hRj6K9UYu3fyfHk6n8dBWbSS3Yc7wKk8nkmJDz9zxUGdixGcNW/bUgS7oFd0krUKE1oqtXg/idn2LtkUuO2aBerZoTx9s+z/E6IcezOPron8+wKjch58ZPs5HTOYj2DhXe/uifePKs84OM09Vb8O1vvAz5sOtg/BfHqfptWP/1F5DuLqpqysFr676G1Y/Eo821CTomAkQg4gkEXBxdH9kI1bAq66dWq0VnZydmZzlPgn2y44GBAWdDsD7KobA+yvF/325H0g6XlwBcGUbyZ+dw10NyrH78LJ6V9qPX4UhydS1YHLl7cvZHJfhHOl7aga0aruoZQzP+/q8ofOPVD7Hi9W343s48FDtri/N4nI5sYdWcerzz6Xbc+Kcv8OODdegQeFBz7jk6lffRP5/iyOKx/Ug+IMVdb/wDqzfH4FmZGr1znLteHP/vtbj75S+hcXIq/RPH6cFz+OihW/CjqAb7xCKnYYwW4f31a3D704fnPirjlJEOiAARiEQCQRdHV7EMpWMWXtVoNHYxZKIoFMuIMIDLBVhvm+jCT3jhPr9EtlXAOXF86bxADUN14OMtOLDpP3HLd36FvYLZrb66OyD/X9z/zbX4yTYljHNE11dpSicCRGA5ECBxdHl93PDwMFpbW9Hb2+s2zBr2RjE1hi7hRBf7vtl2T9LmOQpmq4b2mCfRX5sBpc1r9qev+to8lGhG/Awz+1Mj5SECRCDSCJA4uogj82QNBoN1As74uMt9wki7+m7HE27i6HYQdJIIEAEicE0ESBzdiCMTSMejG9fElwoTASJABIhAGBIgcSRxDEOzpS4TASJABAJLgMSRxDGwFka1EwEiQATCkACJI4ljGJotdZkIEAEiEFgCJI4kjoG1MKqdCBABIhCGBEgcSRzD0Gypy0SACBCBwBIgcSRxDKyFUe1EgAgQgTAkQOJI4hiGZktdJgJEgAgElgCJI4njAi1sChekm/D0uxnoXVANM6hLqcSvt2sXWH5BjYZcIYu2BNJ3n4FEGTpd0xzdjD9+ngq1+zWgQ6ej1BMiEEACJI5hK44WlO8rx3celkP03SyIHryAkgAaytyqx6H4y3rc+VMpWucm+nHmKgp2KHDby+1wLIblR7EIyjKmiscTt9+D5/6Vhmbhi+FHpnAw1oQfbNLjrleG8KdTFuiDOO6J7lLs2fwQvnnvOyjQ0ctng4iemgohAgEXR7PZgOazMshSU5HKbzm10Jq5xY9D5cXj7I04vrYQum6AqRO/2lCID8tH0DMwDq3O4mZtw5DqMXVGSGCiGn9fvxYbT2jhvGDLDHIkBqz/dAwlmqtoVY3jhRf1eKPUOZewqsDsm1H6lw24dZMMg4FpgGolAiFNIAjiqEdj4WlUaEJLDF1F2dfr4nylB/0qe1vyanwYR7Yr8Z1Hs3Hzz4vx0iG9k+dRvSsfa7e1Y/c7Ctz0YC42bG5GqdH/EdR8cg+++tWvWreVj8Sjy/+i1pysfau3yzzeTW0uS0KNI/GlTDyf3I23NuVh9Q/z8dMdWnQ5L7PptcXqLVFYu7kMu5+JxU2rd2DD7xQoFX7Dm7VIemMv7l7zGVbfFo9ntraiz+4gmZD46BY8H1uPtx7agdU3R+Gn7110bn+0F9KXEvHNr3+O726qxKG/RmHtXwVvPh8fwNG39+Hum7bihm8mYOOOS3B1wMZz/oSb7v0CzfZ2bUOaseCfr5iwt8cxRNURI+5ItDhOXNMet6TXS3EybP7RHVhz6z144v1MdLvjqz+G36x6DEmCvtibHivBBxtuwR2/T0a3/STtEIHIIRAUcbyoSEMliePiWI26Bevvl2PV97PwlQ1Z+BrbZ9uPVeBuW82iNl6BG6yLLY9AXdOBZ36Sg1cKHV+uTJxueFyJT4tMaG0fwBev5mDt1n74+5p1i6nfuval5uB/YyHiaBm5Au3AODSyCo/ieNurjZA1jkBd3YanHpVjY56j/75AMnG8Yd1BfCrvRWtTG7742XasfUttG980it/dgXXPnIPigg5tNSq8uX47NsnGbNVy4njbz/Ihq9VBXarEU9/4DBvt6bNo3BGPFfdm4PQFHRqy8/H0t78QiOMMaj6Owa1PlaCoSY/Wqgt4/f9uw3On+Pq5Zi7uuBc3va3wNRRrunK3Aev3+z9+75Vy4njnL7Yita4NamUifrvu63gh1d2vo3ZE/WAV3sxz47UOpeOFNSux6n4J+GXAvbdLqUQgvAgEQRwH0aBIx1llGfKz0pEhV6CqXQe2dqKr97aUx748Q1/pQbvsFgu6ukfRUd2E+zaUYXfHKDrYcc+E7ct/DDEbs/ByoeMLTSVV4OYvdPYuMnFc8YHWvsjvdFkdrn+yCSp7Dv92JtNfXpA48rVPFlR7FMdfpjpWMFaKc7Euyv+7bkwcV7zoWMR4WpGO6/8z3+P4aj7eKRA3Thx/edAxG0X5lx1Y97fLtm6PIOmnW/CbI7zYXUXWK58Kyg9CfN82vFvMjxK4FCvFdX9yvrNa/uEduOsfVY5MHvZmB6/guf82QtzmIcO8T3Pi+OvDDntQfnAbvvVRhZua+rH35yux8ZSDhTCTxTQAw7ir6yvMQftEIHwJBEUcm0vkUJxvh27IBN2lCmSnK9FhCk1xZCLourHLGzLiyNuax7DqELY8kY33zvMZgc6UcxB9oAW/fDETxzU7HF+OMJkgVwxBcMZR2MteIMXxxQJHnO9CogKrtw946YlzEhPHNe9dcpw09EKe0WMf36CyGBsfiMKaG7Zi1aqtuG7FFqzezKsPJ44vpk3Zy1/YGiNIH8AXGz7Bm/n2ZFjDuPawqhZb7tqCFV/j6rbWv/JjiF5ssPNnJcv+drtvcZyYQtR7evz4sMVvr97RK097nDi+nD5pz1C/bT3WvHvWfuzY4cTxuZNmxynaIwLLhEDAxdHVGzSbO1GVmYv6vtAUR0/XPaLF0dOgfZwPG3EUjuNqB9659XM8vasDzZf06OjQQ/5OlED8fIvj5+t9ieMXeDOVq5vVb90GHGLEulP59zs9eGu2zl69iuNbDfjujgloHUEA4UgWuD8fcdRi909W4nl7SHmBTVIxIhCGBAIujmazCcZBA0zDnBhy4piH+v7QEUcW4mXiNzHhCOUJryU7z9JnZhb1W0rYxPz3PXqO/oVVnTzH+bduLRGW4thbicdER3BylB/0LErf3zEPceTE89mTvNjNouCtbS5h1U/wWrbD872i00Pdy+fn2m2LeQir/pDmfobx7AwUcUbc849xtC7WrUZ+uJiPONZhy903471i96HT2ckxXOHDEfb6aYcIRAaBIIijDipFJkqa+jE0bIKuoxLZmeXQhFhYtbm5GW1tbZiednypsUvMjtn5lpYQm3bgURxnUZvATcjJVTsm5PzxrONbdk5YdV62bIGpX+uYkPPANpzXsuN+DDua8FLjDEyD444JOc80oYo9ijJwxVaem626qGFVYW+mLmHzLdvw889b0XRJh/On8/DMd+YjjjOo+FCC639WAtXwNMZaz+MP394uEEduQs6Nj+QhR6VHe20D3v7eZ3jykPBBRmC6egu+/Y2XIR8Wdo7tz0J1fAi3v2ZGVtc0egdt29AMHIFelk8H5aEYxJy6AP7up2tN7o/9F8ep+m1Y//UXkO4uqmrKwWvrvobVj8SDD0i7b4/OEoHwJBBwcWRhVVO/GpWKbGScToM8rwQXLg+G1GQcPvSr1WrR2dmJ2VnulzL7ZMcDA/7f7wqaGXgURwCCRzlu+lkRXnTzKMfCPcd6fHLPSvujHPZHOlbeg231/oye3RPNdDzKwR7nYNuGfGxtZuUDLI4ABooUeHrDDtx44w488IcqnPwkfh6eI6tAjXe+/xlEX/kYN6zPxNY3JAJxBDA2gOT/2Yu7vr4Vq9cl4NltavTOCTr04vh/r8XdL38JjVPAYhr73h/Ef/xa77Td/NYY2oV4R1Px3HUr8XCs01lhDg/7/onj9OA5fPTQLfhRlGNik1OFo0V4f/0a3P70YZdHcZxy0QERCFsCQRFHXnxC/ZOFVzUajV0MmSgKxTJsrzJ1fPEJzF7FUP8oxq4ClR+JcftHnfNvY7wFBzb9J275zq+wt3F+xWdK/4K1X/sJ9mnnV86f3APy/8X931yLn2xTwug+oupPNZSHCIQ1ARJHl9fHDQ8Po7W1Fb29vW7DrGF9tanzi0TgKkx9Jmi1JvR0aPDZjz7Fr5PdP+7gu8FJ9NdmQCl4h4DvMoA66ge4/ukjTi938KecP3n0tXko0YyAdNEfWpQnUgmQOLqII/NuDQaDdQLO+Li/j8VHqnnQuNwT6MZHt2+BSPQx/s/1O/DAy+fR5BQadV9q8c6acPS3q/FiqvN9zMWrn2oiAkSAxNGNODKBDLlHN8hWiQARIAJEIGgESBxJHINmbNQQESACRCBcCJA4kjiGi61SP4kAESACQSNA4hgm4tjX1xc0o6CGiAARIALLnQCJI4njcv8foPETASJABOYQIHEkcZxjFHSCCBABIrDcCZA4kjgu9/8BGj8RIAJEYA4BEkcSxzlGQSeIABEgAsudAIkjieMC/wdmUJdSiV9v16J3gTWEdrEpXJBuwtPvZkTo+EKbPvWOCCw1ARJHEscF2uBVFOxQ4LaX2+G8xj1fnQXl+8rxnYfl3IvFH7yAEj4pgJ/6ok/ws2+vwc13Po6P8vkXxg9B/voP8e7ZOUtgeOnJOBR/WY87fypFq5dcS5I0NoXkOBN+sEmPO18ewqvHLBiY82LzJekZNUoEIoZA0MTRbDaiXZmFAlUfhs2hs5ajp5ehh9obcsLuUQ5TJ361oRAflo+ghy1JpbO4X7twUf+VjEh+6pv4Y0ojmmR/xrd+lgT2AIyp4H/ww/85g8h42dosSqUG3PW3MSg6rqKt4Qpef0WP5844L7W2qFipMiKwDAkETRxNPTXIy6uFNsTWcSRxnL/Vs/UgrctMsaWmNrW5X7LI25JaXpvkllR6KU6GzT+6A2tuvQdPvJ+Jbr+++3XY/4s78ddzY7hS9U/812NSaEeK8faPXkeu0WujTok1n9xjX5Jr5SPx6HJKXeqDKXz+igGfCZYX7ZWbsObzCecfH2Ml+GDDLbjj98noXuouU/tEIAwJBEUczWYdLiryUNNtCsl1HN0JJHmOnq3ZMnLFsVixqziqW7D+fjlWfT8LX9mQha+xfbb9WAWl5yoFKZw43vmLrUita4NamYjfrvs6Xkj1T90upzyLO1atxMrr1uHpgxdQ/P4j+GPmoKB+37sWU79jMed5i6MK2+9djdWrXbY3ssDpu690X/2z4INnhpDQ48g3XjKMmz8ad16hYygdL6xZiVX3SyDQUUch2iMCRMArgaCIo7FdCXluIYoVuZDnKFDV2gdTiIdWSRy92o01cbKgeq7naLGgq3sUHdVNuG9DGXZ3jKKDHfdMwL81Tjhx/PVhnb0Dyg9uw7c+qrAfe9+ZxaSpD31DExir+AiPvJgKR03eS7qmTqa/jPl7jpMwdGus64KytUHt28CorXpf6a69cD3mxXEG6f8y4AnZFNyKIwCLaQCGcVp4ypUgHRMBfwgEXBzN5n6o8rNQ0twPk3kY+q4a5J8uQMNAaN93JHH0bT5uxZEvdo1h1ZfTJ/maUL9tPda8e9Z+7NfOlRr889Fn8Hnsn/HDu27HPU/8HYXzVMmFiaNfvbuGTLw4AlfHZzA8BY/ieA2NUFEisOwJBF4cdQ0oyKpCl81TNJtNaCmWobjFGNIhVhJH3/8boSuOk6j77HE8e0yGv9z2MLYozuPkn7+DB6PnN+90YeLoK2zqK90Xd4c48jk9eY58On0SASIwfwKBF0dtLXIyq9BpF0cjmotlKFGH9v1HEkffxhSq4mhp+Bce/91haKfkeGXt+ygDMJb6Au74sNz3oAQ5FiaOvsKmvtIFHXC7635Czs2fXcGYS/7ZyTFcuepykg6JABHwi0DgxdHUhSp5BopUPdCbTBjoqEJuehFa9BRW9esK2TKFzqMcMzANjjsm5DzThCr2qMbAFQxbBCNaqrDqVAskP3sKBzvZg39leH/do9iuVCH97fV4YKf7JzIFvWZ36mDq1zom5DywDee17LjfeXzOhYJ45PIox8UreOOPevwu22U6rykHr637GlY/Eo+2IPaOmiICkUIg4OLIZoIOaZtRrpAjPe00MvOKUasZhJkm5MzLhkJHHIew5YlMx6Mc7HEOtm3Ix9ZmwZCWRBynoY77BX61pwPcM/HTaDv2Cu5buwa3P/Ie8voF/fO4W49P7llpf5Tjq1/9qnV/5cp7sK3eY6HgJtheAnD/Jj1ue96IF5Mn0ev6EoDRIry/fg1uf/qw+0dtgttjao0IhB2BoIiju0clQv0chVXDzpapw0SACBCBRSNA4kivj1s0Y6KKiAARIAKRQoDEkcQxUmyZxkEEiAARWDQCJI4kjotmTFQRESACRCBSCJA4kjhGii3TOIgAESACi0aAxJHEcdGMiSoiAkSACEQKARJHEke/bDl0HiXxq7uUiQgQASJwTQRIHEkc/TIgEke/MFEmIkAEIoQAiSOJo1+mTOLoFybKRASIQIQQIHEkcfTLlEkc/cJEmYgAEYgQAiSObsRxcHAQ7A057C0+ofK31OK01O2HynWgfhABIrA8CJA4uoijXq+HWq2GwWCwfo6Nua51sDSGsdTitNTtLw11apUIEIHlSoDEUSCOroLIhJEJZSgI5FKL01K3v+j/oLUqrPlpA6oXveJrrXAS+19382L3Z9Xo8KPqkh05jpfCb6hCmnClFD/KUxYiQAQ4AgEXR3O/CnkyGVJTUx2bTIbCJn1ILXZsNBrdCmGoCORSi9NSt7/o/7AhLo6/+XLEuiyY1roc2Di0Bgum/IAwYb7ClVM14/skjn4QoyxEwD2B4IijcLHj4W6cl8tR3T0cMuLIls9i9xg9eYjsPEufmXFdF8g91ECcXWpxWur2hUyrd+Vj7bZ27H5HgZsezMWGzc0oNQpyTJhxdHsp7n5YjhseO4uNe3XQzdrSz6uweoMbz+x1DQatWUax89lMvFLIFwAuJCqwevuAvQHv7Y8j8aVMPJ/cjbc25WH1D/Px0x1adLkst2ivbM4O5zluzPOySvHoEJI+LsXdP5Jj9U/O4pnEAfQ5usvV6G3JsGE9JO+dxboHs7DigTw88EE76oR3D7zxm9NfOkEEIpNA4MXR2IPW5ssYtK3faNKUIyO3Fr0htp6jryWqfKUH2jyWWpyWun0hXyZONzyuxKdFJrS2D+CLV3Owdms/xq2ZZlETp8Ctb6lR1D6KVlUXXn8qG8/lTnJVTExC0z2Kjtwa3PRYHTLYPtt0FnD65Z84em6fE8fbXm2ErHEE6uo2PPWoHBvz/I1v+hLHGRR/kYd177RC0WxG28UevPmbbGxyrd+LOF7cU4jrX1Oj7PIYLrfrsOOtM3jk8LANsQ9+wgtB+0QgggkEXByF6zaazUNoLU1Dgao/ZLxGvn++xM9XeqBtZKnFaanbF/Jl4rjiAy14uZkuq8P1TzZBZc00AvHvs/FulaPEpeRiXPdxn+ME2/MYVvVPHD23z4njL1Mn7O0pxblYF6W3H3vf4cTx/3xPjlX3O7bHU4SunXMNNXEFWCvm/F57ihdxPLcjF7d8NmDnZy9j3fGTn3MhOiICEUcguOI42IyzpwvRrDeHrDgyEXTd2FUncXQRlyX8V2DiuGaHztEDkwlyxRC4M0PY8kQmVtznEJbrvpcJ0QdaOAUqr1EcPbfPieOLBY44qmtY1tFxd3ucOP7s0BDn0do8W63ZEdIfrFVj43P5WPMAN0Y2PmHY11qrF3Ecq23EhvvluPulCrwuUSO5agxX7F3xk589P+0QgcgkEFRxHFAV4HSJGsYQC6ky79GX+PlKD7R5LLXnttTtC/nOEUdhItiXey7ePGMLl/JhU73LdJbFFEen9hdHHJ/O5P1ip8qB6UG882gOnk4eRHMXN0b55/nzEkdW47huCDkZbdi6vRz3/ECOX8h4z9RPfi7dokMiEGkEgiaOZnMvanPTUXbJFHJeI4mjb7MOH3FkYcEsvFbs8LSuGEeh1s0Vx1vcPsoxiYNvZOKpdNs9Sszi7PYc3JM4ZIfkXZwDLI66Djy2oQIneS0DUPqv3Lni2NuOH3qYrTo7PYsZwQQeFnYWvdMFrko/+dlp0A4RiEwCQRPH4a7zyMqqxGVT6IVUSRx9G3f4iCM3oeTGFy8iRz2K9kYt3v6dHE+mctN17CO93Ir77j2Hz2vN1vClxugIuraxe5S/r0dGywiaKtT4+cNn8H61I0y6pOJ4VYfNj2Tj57sH0NQ1gvP5F/HMr/LmiuOEFs/fdwZ/zh9Bj/VxkAmMWIc4jayP5LjrQw0qOsbQddmA+M251nuWnF76yc8OknaIQGQSCIo4ms0mdJRnILu6B+yxCX4STCh9ut5ndHe8lCaw1OK01O0L2XsXJwBXhpH82Tnc9ZAcqx8/i2el/eh1OJK2qiZwRnIOtz+QZX1o3umenWUUqWIl/uvRbNz8RAlePzEEfi4nK+y9/QB7jgAGKpvx9NN5uPHBPDzwoQYn48/OFUfMQJ1ZjR/8WI6vsEdXNhRhVzc39JmBPvz9zwp84/4srHgwD9/b3IRig4CwX/wE+WmXCEQggaCIYyiJoL99Wep7jK62ttTitNTtu/KgYyJABIhAIAmQOApeHycUThJHZ7MjcXTmQUdEgAhENgESRxJHvyycxNEvTJSJCBCBCCFA4kji6Jcpkzj6hYkyEQEiECEESBxJHP0yZRJHvzBRJiJABCKEAIkjiaNfpkzi6BcmykQEiECEECBxDBNxjBB7o2EQASJABMKCAIkjiWNYGCp1kggQASIQTAIkjiSOwbQ3aosIEAEiEBYESBxJHMPCUKmTRIAIEIFgEiBxdCOOg4OD1lU62EsB6I8IEAEiQASWHwESRxdx1Ov1UKvVMBgM1s+xMcHyB8vPPmjERIAIEIFlSYDEUSCOroLIhJEJZUQKpMf1DJf4/+C8CqvZi7K/y70Q3P65oQxHhW//XuJuUvNEgAhENoGgiKNpoA1VCjnS004jM7cYtR06DIfY6hxGo9GtEEasQIaqOE5a0GtdYmkM+zdn4vuJemitx5MYm7OyRmT/c9LoiAARWDoCARdHs7kPF3IzUHxRC6PJhEFNNfLSiqE2hM7SVWwZLfaicU8eIjvP0mdmQuPbmS2ZtHZbO3a/o8BND+Ziw+ZmlBoFRjRhxtHtpbj7YTlueOwsNu7VQccvbuvJM3tdg0FrFaPY+WwmXinkCwAXEhVOSyJ5b59bsun55G68tSkPq3+Yj5/u0KLLsRyioKPedmeR9kEmHk4enZPJe/u++w9vfOa0RieIABFYjgSCII4alJ1WoHGQE0OzuRvns3JR3xc64sgm3vhahcNXejCNh4nDDY8r8WmRCa3tA/ji1Rys3doPbjlfbrHaW99So6h9FK2qLrz+VDaey7WtbD8xCU33KDpya3DTY3XIYPts01nA6ZdvcfHePieOt73aCFnjCNTVbXjqUTk25lnmici7OHoev6/+++Azz15SdiJABCKTQBDE0YSumjzklKjQ2d+LtvMFyC5uhi7Ewqq+xM9XejDNg4nTig+04OVmuqwO1z/ZBJW1EyMQ/z4b71Y5enSJrWz/cZ/jBNvzGFb1JS7cYr+e2+fE8ZepE/b2lOJcrIvS24/92/Eujp7b99V/P/n410nKRQSIQIQSCLg4Mq/MbOxEdV4aMuVypGUWobnfBOHaiaGwz4sf+3Td2LXn00PBDpg4rtmhc3TFZIJcMQTuzBC2PJGJFffJsep+brvue5kQfaDFVUeJaxZHz+1z4vhigSOO6hqWFXbD8753cfTcvi9x9JOP545RChEgAsuAQMDFkd1zbFDkQdk6AJN5GIYeFQpzy9BhpLDqQu1rjjg6VcS+/HPx5hlbuJQPm+qnnHJdq+foJE5ONS+BODq17484+sHHqU46IAJEYLkRCLw49qmQJ69Gjy2Majab0HouFaWtoeU9+vIMfaUH03C8iyMLG2bhtWLH5KErxlGodXPF8ZafNqB6TscncfCNTDyVbrtHiVmc3Z6DexKH7Dm9t7/U4uir/37ysY+WdogAEViOBAIvjsZWnEvLQUVbP4bYbNWeiyjOlKO6mzzHhRqcd3HiJpzc+OJF5KhH0d6oxdu/k+PJVG66jr3Ny624795z+LzWbJ2QozE6gq5t7B7l7+uR0TKCpgo1fv7wGbxf7QiTem9/qcUR8N5/P/nYQdEOESACy5FA4MXRbMagpg4leVlIO52GdLkC5U09GArBCTmu9xpdj0PFQLyLE4Arw0j+7BzuekiO1Y+fxbPSfvQ6HEnbMCZwRnIOtz/APWy/evuAY3iWUaSKlfivR7Nx8xMleP3EEITP33tvf+nFET767x8fBw7aIwJEYPkRCLg4hsJkm4X0IZTCqMvPLGnERIAIEIGlJUDiKHh9nFBESRyX1jCpdSJABIjAUhIgcSRxXEr7o7aJABEgAiFJgMSRxDEkDZM6RQSIABFYSgIkjiSOS2l/1DYRIAJEtBJILgAAA+FJREFUICQJkDiSOIakYVKniAARIAJLSYDEkcRxKe2P2iYCRIAIhCQBEkcSx5A0TOoUESACRGApCZA4kjgupf1R20SACBCBkCRA4kjiGJKGSZ0iAkSACCwlARJHEseltD9qmwgQASIQkgRIHEkcQ9IwqVNEgAgQgaUkQOJI4riU9kdtEwEiQARCkkBQxNHUr0aVIhvpp08jM68YtR06DIfYqhzC96qyfXq3akjaK3WKCBABIhAUAgEXR7NZi9rcTBSpemAwmTDQUYW8NAUuDoTWeo4kjkGxN2qECBABIhAWBAIvjn31yM2sQqfNUzSbh9BSLENxsxGughRKx+Q5hoX9UieJABEgAgEhEHhx1NYi20Ucm4tPo+zSMIljQC4pVUoEiAARIALXSiDw4mjSoCIzA0WqbuhNRvRfqkJuphLtRgqrXuvFo/JEgAgQASIQGAIBF0cWKtVfvoDi3ExkZOVDkZ+FvDotTcgJzPWkWokAESACRGARCARFHPl7ieZBNYpzyqAZCm2vkfWX7jkugnVRFUSACBCBMCUQNHE0mw1oU8pxtkkX0vcaeSEncQxTi6ZuEwEiQAQWgUDQxHFIUwl5bi20w6HvNZLnuAiWRVUQASJABMKYQNDEkffIwuWTPMcwtmrqOhEgAkTgGgmQONLr467RhKg4ESACRCDyCJA4kjhGnlXTiIgAESAC10iAxJHE8RpNiIoTASJABCKPAIkjiWPkWTWNiAgQASJwjQRIHEkcr9GEqDgRIAJEIPIIzFscp6eMWA4bm626HMZJY1we9kzXma4z2cD8bIDE0YPYkzjOz5DoH494kQ2QDUSSDZA4kjiSh+zBBiLpH53GQsJFNjA/GyBx9PDFSJ7j/AyJ/vGIF9kA2UAk2QCJI4kjeY4ebCCS/tFpLCRcZAPzs4F5i6OtAOhTRAxExID+D8gGyAYi2gY+FolEr4lEol+KRKJ7RSLRN0Qi0b+J/Pj7d5FI9C2RSPT/RCLRb0Qi0RsikYhVRhsxIBsgGyAbIBsIdxtgmsa0jWkc0zqmeX79MQW9SSQS3S0SiR62VcJUljZiQDZANkA2QDYQ7jbAhJFpG9M4pnV+eY28eq4QiUT/YSvM1JW5n7QRA7IBsgGyAbKBcLcBpmlMGJnGMa2b9x8rxFSVuZ0sLksbMSAbIBsgGyAbCHcbYJrGtG1BwsgrKXM3WTyW3bCkjRiQDZANkA2QDYS7DTBNm1colRdEd5+sItqIAdkA2QDZANlAuNuAO42jc0SACBABIkAEiAARIAJEgAgQASJABIgAESACRIAIEAEiQASIABEgAkSACBCBRSXw/wH83hX2rGl8iAAAAABJRU5ErkJggg==\" alt=\"image.png\" rel=\"3\" /></p>\n<p>我编写 <code>for</code>语句,CodeWhisperer 推荐循环的主体:</p>\n<p><img src=\"data:image/png;base64,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\" alt=\"image.png\" rel=\"4\" /></p>\n<p>CodeWhisperer 还可以帮助我编写用于访问各种 AWS 服务的代码。我从 <code># create S3 bucket</code>开始,然后按 TAB 键完成剩余部分:</p>\n<p><img src=\"data:image/png;base64,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\" alt=\"image.png\" rel=\"6\" /></p>\n<p>我可以为您展示许多更出色的示例,您只需加入预览版并试用 CodeWhisperer,就可以了解更多信息。</p>\n<p><strong><ins>参与预览版的试用</ins></strong><br />\n预览版支持使用 <a href=\"https://code.visualstudio.com/\" target=\"_blank\">VS Code</a>、<a href=\"https://www.jetbrains.com/idea/\" target=\"_blank\">IntelliJ IDEA</a>、<a href=\"https://www.jetbrains.com/pycharm/\" target=\"_blank\">PyCharm</a>、<a href=\"https://www.jetbrains.com/webstorm/\" target=\"_blank\">WebStorm</a> 和 <a href=\"https://aws.amazon.com/cloud9/\" target=\"_blank\">AWS Cloud9</a>,以 Python、Java 和 JavaScript 编写的代码。AWS Lambda 控制台支持已在准备中,很快就会就绪。</p>\n<p><a href=\"https://pages.awscloud.com/codewhisperer-sign-up-form.html\" target=\"_blank\">加入 CodeWhisperer 预览版</a>,让我知道您的想法!</p>\n<p>– <a href=\"https://twitter.com/jeffbarr\" target=\"_blank\">Jeff</a>;</p>\n"}
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭